Hello everyone.

I had a lengthy subroutine with handler routines, like this, before:
Code:
    Private Sub CompMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _
ToolStripMenuItem3.Click, ToolStripMenuItem4.Click, ToolStripMenuItem5.Click, ToolStripMenuItem6.Click, _
ToolStripMenuItem7.Click, ToolStripMenuItem8.Click, ToolStripMenuItem10.Click, ToolStripMenuItem11.Click, _
ToolStripMenuItem12.Click, ToolStripMenuItem13.Click, ToolStripMenuItem14.Click, ToolStripMenuItem15.Click, _
ToolStripMenuItem16.Click, ToolStripMenuItem18.Click, ToolStripMenuItem19.Click, ToolStripMenuItem20.Click, _
ToolStripMenuItem21.Click, ToolStripMenuItem23.Click, ToolStripMenuItem24.Click, ToolStripMenuItem26.Click, _
ToolStripMenuItem27.Click, ToolStripMenuItem28.Click, ToolStripMenuItem29.Click, ToolStripMenuItem30.Click, _
ToolStripMenuItem31.Click, ToolStripMenuItem33.Click, ToolStripMenuItem34.Click, ToolStripMenuItem36.Click, _
ToolStripMenuItem37.Click, ToolStripMenuItem38.Click, ToolStripMenuItem40.Click, ToolStripMenuItem41.Click, _
ToolStripMenuItem43.Click, ToolStripMenuItem44.Click, ToolStripMenuItem46.Click, ToolStripMenuItem47.Click, _
ToolStripMenuItem48.Click, ToolStripMenuItem49.Click, ToolStripMenuItem50.Click, ToolStripMenuItem52.Click, _
ToolStripMenuItem53.Click, ToolStripMenuItem55.Click, ToolStripMenuItem56.Click, ToolStripMenuItem57.Click, _
ToolStripMenuItem58.Click, ToolStripMenuItem59.Click
'subroutine (handling the name) code here
But since I have to loop through all these items to check the Tag associated, I decided to add it to an array:
Code:
    Private ComponentItems() As ToolStripMenuItem = New ToolStripMenuItem() { _
    ToolStripMenuItem3, ToolStripMenuItem4, ToolStripMenuItem5, ToolStripMenuItem6, _
    ToolStripMenuItem7, ToolStripMenuItem8, ToolStripMenuItem10, ToolStripMenuItem11, _
    ToolStripMenuItem12, ToolStripMenuItem13, ToolStripMenuItem14, ToolStripMenuItem15, _
    ToolStripMenuItem16, ToolStripMenuItem18, ToolStripMenuItem19, ToolStripMenuItem20, _
    ToolStripMenuItem21, ToolStripMenuItem23, ToolStripMenuItem24, ToolStripMenuItem26, _
    ToolStripMenuItem27, ToolStripMenuItem28, ToolStripMenuItem29, ToolStripMenuItem30, _
    ToolStripMenuItem31, ToolStripMenuItem33, ToolStripMenuItem34, ToolStripMenuItem36, _
    ToolStripMenuItem37, ToolStripMenuItem38, ToolStripMenuItem40, ToolStripMenuItem41, _
    ToolStripMenuItem43, ToolStripMenuItem44, ToolStripMenuItem46, ToolStripMenuItem47, _
    ToolStripMenuItem48, ToolStripMenuItem49, ToolStripMenuItem50, ToolStripMenuItem52, _
    ToolStripMenuItem53, ToolStripMenuItem55, ToolStripMenuItem56, ToolStripMenuItem57, _
    ToolStripMenuItem58, ToolStripMenuItem59}
Now I tried to add the handlers manually in the Form_Load subroutine:
Code:
        For Each compitem As ToolStripMenuItem In ComponentItems
            AddHandler compitem.Click, AddressOf CompMenuItem_Click
        Next
But now the compitem is nothing all of a sudden, and I have no idea why. I declared the array correctly, didn't I?
Without the "New ToolStripMenuItem()" part it fails with the same error.
Object reference not set to an instance of an object.
Note: all items are not under the same parent item, so I can't use the "DropDownItemClicked" event.