2010-11-01 138 views
0

我使用vb.net中的LostFocus事件来检查字段名称的有效性。 在此字段之后有另一个密码有效性的密码,并且我手动执行相同的事件以检查密码。 我的问题来了,当我运行(名称)失去焦点,运行子内的代码,然后自动去的password_lostfocus这给我带来了很多麻烦。 即使我使用错误提供程序,它可以正常工作,并为我带来红色闪烁的错误。然后,我将命令(name_textbox.focus)从逻辑上带到了name_textbox中的控件中。但是没有。 。控件自动转到Password_textbox子项。 请参阅我的子失去焦点问题

Private Sub UsernameTextBox_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles UsernameTextBox.LostFocus 
    Select Case DB_Access.IfExistUser(UsernameTextBox.Text, sender, e) 
     Case True 
      PasswordTextBox.Focus() 
     Case False 
      ErrorProvider1.SetError(UsernameTextBox, "Ο χρήστης ΔΕΝ υπάρχει παρακαλώ καλέστε τον Administrator") 
      Beep() 
      UsernameTextBox.Text = "" 
      UsernameTextBox.Focus() 
    End Select 

End Sub 

请,如果有人已经看到了这个问题,并面对它,帮助我。 对不起,希腊字符他们是无意义的,他们是评论

+0

请不要清除用户名文本,如果名称存在。如果JeffO被带入你的系统,我希望只需添加一个1即可:JeffO1或类似的东西。 – JeffO 2010-11-01 13:11:14

回答

0

好吧,最后我发现。 为了处理登录表单,因为它从visual studio 2010中给出它,所以你只需要在一个子集(Lost Focus)中完成,那只是password_LostFocus。 我相信特定的形式就是这样的。 任何方式我解决这个问题,如果有人需要帮助,只是“asc问题”

+0

您可能会考虑使用Leave事件而不是LostFocus,所以如果程序失去焦点,它将不会触发。 – xpda 2010-11-03 04:33:19