Creating submenus with buttons
A couple of points that may help you.


When you see yourself copy and pasting or writing duplicated code, consider refactoring.  I could only see one difference in your code in the case statements.  You could move all that to a method and pass in the necessary struct.  Even further, once you have done this you will see further code duplication you could probably further refactor into seperate methods.
I'm not sure about having exposed fields on the struct start with _.  You might want to read Jon Skeets Answer on stack overflow.
I would probably consider removing your struct and using a single class.  Then I would create 4 instances of that class with the values required.  I might even consider populating the text for those from a resource file.
I'm not really sure on this, but in old versions (Vb 6....) you could create controls which were arrays of each other.  So instead of panelSubBtn1, panelSubBtn2 etc you would just have panelSubBtn and reference it by panelSubBtn[0] etc  If this was possible you could seriously simplify your code.  I'll let you figure that out though...


These are a few quick things which may or may not help.