我正在使用Windows窗体应用程序,我有两个组合box.inside功能我必须检查我有哪些组合框。依赖于我必须做一些操作
我已经在这样的combox焦点事件中完成了编码
Private Sub cmbfrmwarehouse_GotFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbfrmwarehouse.GotFocus
Dim currencombobox As ComboBox = sender
If currencombobox.Equals(cmbfrmwarehouse) Then
MessageBox.Show("it's in two")
ElseIf currencombobox.Equals(cmbTowarehouse) Then
MessageBox.Show("it's in three")
End If
End Sub
但是我无法在函数内部调用此事件。我可以实现此目的。请帮助
答案 0 :(得分:2)
他们必须共享相同的事件处理程序。 sender
对象是有问题的组合框。
Private Sub cmbfrmwarehouse_GotFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmbfrmwarehouse.GotFocus, cmbTowarehouse.GotFocus
Dim currencombobox As ComboBox = sender
If currencombobox.Equals(cmbfrmwarehouse) Then
MessageBox.Show("it's in two")
ElseIf currencombobox.Equals(cmbTowarehouse) Then
MessageBox.Show("it's in three")
End If
End Sub
答案 1 :(得分:1)
您无法召集活动。您可以引发事件(在这种情况下,通过将焦点设置在正确的组合框上)或调用它的处理程序:
要举起此活动,请使用相关组合框的Focus()方法:
cmbfrmwarehouse
但是,这只会执行 cmbfrmwarehouse_GotFocus(cmbfrmwarehouse, EventArgs.Empty)
'' or
cmbfrmwarehouse_GotFocus(cmbTowarehouse, EventArgs.Empty)
的事件处理程序,除非您还使用OneFindeDay's answer并让两个组合框共享GotFocus事件的相同事件处理程序。
另一种方式是调用事件处理程序,只需像调用任何其他方法一样调用它:
{{1}}