Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net vb 2015单击事件中的错误处理_Vb.net_Error Handling - Fatal编程技术网

Vb.net vb 2015单击事件中的错误处理

Vb.net vb 2015单击事件中的错误处理,vb.net,error-handling,Vb.net,Error Handling,我只是在学习vb 2015。我开发了一个windows应用程序,通过ID、姓名、公司和电话为Access数据库提供查找功能。用户通过单选按钮选择查找类型。然后,我打开第二个表单,它在文本框中请求用户输入,并显示匹配行的datagridview。当用户按下按钮接受输入时,单击事件对输入进行广泛验证,如果输入无效,则显示一个消息框。此时,我想清除文本框并将其设置为焦点,以便用户可以重新输入ID、电话等。我已经在谷歌上搜索并尝试了一个号码,如果选项没有乐趣的话。如果我在单击事件中设置.clear和.f

我只是在学习vb 2015。我开发了一个windows应用程序,通过ID、姓名、公司和电话为Access数据库提供查找功能。用户通过单选按钮选择查找类型。然后,我打开第二个表单,它在文本框中请求用户输入,并显示匹配行的datagridview。当用户按下按钮接受输入时,单击事件对输入进行广泛验证,如果输入无效,则显示一个消息框。此时,我想清除文本框并将其设置为焦点,以便用户可以重新输入ID、电话等。我已经在谷歌上搜索并尝试了一个号码,如果选项没有乐趣的话。如果我在单击事件中设置.clear和.focus,然后返回,则焦点不在文本框中。用户可以点击文本框并输入新的请求,但将焦点放回文本框似乎更为优雅


单击事件后控件返回到何处?在vb.net中是否有处理此问题的标准方法?

您可能在验证代码期间引发异常

尝试将任何有风险的操作放在一个Try…Catch块中,并在Finally区域执行任何必要的操作。这也将确保你做的最后一件事就是清理和重新聚焦

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Try
        ' Validation code
    Catch ex As Exception
        ' Handle exception
    Finally
        TextBox1.Clear()
        TextBox1.Focus()
    End Try
End Sub

您可能在验证代码期间引发异常

尝试将任何有风险的操作放在一个Try…Catch块中,并在Finally区域执行任何必要的操作。这也将确保你做的最后一件事就是清理和重新聚焦

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Try
        ' Validation code
    Catch ex As Exception
        ' Handle exception
    Finally
        TextBox1.Clear()
        TextBox1.Focus()
    End Try
End Sub

请发布相关代码。是的,请发布点击事件代码,因为通话顺序可能会有问题。我相信我找到了解决方案。在我在点击代码中显示错误消息以处理条目后,我只是返回了一条消息。我创建了一个验证事件,如下所示:“Private Sub txtCustomerSelect\u validating(发送者作为对象,e作为CancelEventArgs)处理txtCustomerSelect.validating e.Cancel=True txtCustomerSelect.Text=”“End Sub”文本框被清除,焦点正确。如果您希望无效条目仍然可见,只需关闭txtCustomerSelect.Text=”“。我不确定这在vb程序中是否被认为是良好的形式,但它可以工作。请发布相关代码。是的,请发布单击事件代码,因为调用顺序可能是一个问题。我相信我找到了解决方案。在我在点击代码中显示错误消息以处理条目后,我只是返回了一条消息。我创建了一个验证事件,如下所示:“Private Sub txtCustomerSelect\u validating(发送者作为对象,e作为CancelEventArgs)处理txtCustomerSelect.validating e.Cancel=True txtCustomerSelect.Text=”“End Sub”文本框被清除,焦点正确。如果您希望无效条目仍然可见,只需关闭txtCustomerSelect.Text=”“。我不确定这在vb程序中是否被认为是好的形式,但它可以工作。