Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Button Array

0 views
Skip to first unread message

Jacko

unread,
Dec 3, 2009, 8:08:52 AM12/3/09
to

Hi

I have a UserControls with 20 buttons, how do i create a single delegate for
all these buttons for the click event, which will show in the hosted windows
form.

Pointer to source will be helpful

Regards
Jacko


Jacko

unread,
Dec 3, 2009, 8:18:03 AM12/3/09
to

Forgot to mention, the project is in VB.NET

"Jacko" <som...@somewhere.com> wrote in message
news:%23hAuFnB...@TK2MSFTNGP04.phx.gbl...

Family Tree Mike

unread,
Dec 3, 2009, 9:58:01 AM12/3/09
to

"Jacko" wrote:

> .
>

Create a subroutine to handle all the buttons:

private sub ClickSub _
(ByVal sender as System.Object, ByVal e as System.EventArgs)
MessageBox.Show("Here...")
end sub

Then in the form constructor, you do the following for all buttons:

AddHandler Button1.Click, AddressOf ClickSub


I don't know what the fragment of your question "...which will show in the
hosted windows form" means.

Mike

OmegaSquared

unread,
Dec 3, 2009, 1:07:01 PM12/3/09
to
Hello, Jacko,

If I understand the question correctly...

You need to define a common click Event for your UserControl and raise this
event in the event handler(s) for the buttons. For example:

Public Class MBUserControl

Public Event ButtonClick(ByVal sender As System.Object, ByVal e As
System.EventArgs)

Private Sub Button_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) _
Handles Button1.Click, Button2.Click,
Button3.Click, Button4.Click
RaiseEvent ButtonClick(sender, e)
End Sub

End Class

And then when you add this UserControl to a Form, you can handle the
ButtonClick event. For example:

Public Class Form1

Private Sub MbUserControl1_ButtonClick(ByVal sender As Object, ByVal
e As System.EventArgs) _
Handles
MbUserControl1.ButtonClick
Dim cmdSender As Button = DirectCast(sender, Button)
MsgBox("Button """ & cmdSender.Name & """ was clicked.")
End Sub

End Class

Cheers,
Randy

Jacko

unread,
Dec 4, 2009, 3:20:45 AM12/4/09
to
Thanks

"OmegaSquared" <OmegaS...@discussions.microsoft.com> wrote in message
news:0C55322A-EA6E-4F26...@microsoft.com...

Jacko

unread,
Dec 4, 2009, 3:20:05 AM12/4/09
to

Thanks Mike

I used the addhandler method and got it working

Regards
Jacko


"Family Tree Mike" <FamilyT...@discussions.microsoft.com> wrote in
message news:6A247C90-B2FE-425A...@microsoft.com...

0 new messages