2012-05-02 20 views
8

Buenos días,Simular un clic de botón dentro de la aplicación (VB.NET)

En mi solicitud, tengo Private Sub btnSendSMS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSendMessage.Click en mi programa.

Me gustaría simular un clic de botón de arriba en mi otro sub (un detector de recepción de SMS) cuando se recibe un SMS.

¿Cómo puedo hacer esto? Sé que esta no es la mejor manera de hacer las cosas, sino solo por el bien de aprender. Gracias.

Respuesta

21

puede llamar al método :

btnSendSMS.PerformClick() 
4

Puede llamar a la función directamente.

btnSendSMS_Click(Me, EventArgs.Empty) 
4

¿Por qué no poner el código en un método independiente

Private Sub SendSMS() 
    ' do your thing 
End Sub 

y en su botón de controlador de eventos, llame a ese método .

Private Sub btnSendSMS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSendMessage.Click 
    Call SendSMS() 
End Sub 

Ahora se puede llamar SendSMS() cualquier lugar de su clase sin tener que hacer algo funky como la simulación de pulsaciones de botón.

1

O en caso de utilizar VB en WPF:

Dim peer As New ButtonAutomationPeer(btnSendSMS) 
Dim invokeProv As IInvokeProvider = TryCast(peer.GetPattern(PatternInterface.Invoke), IInvokeProvider) 
invokeProv.Invoke() 
Cuestiones relacionadas