Take the 2-minute tour ×  In the past, I have used inheritance
to allow the extension of Windows forms in my application. If
all of my forms would have common controls, artwork, and
functionality, I would create a base form implementing the
common controls and functionality and then allow other controls
to inherit from that base form. However, I have run into a few
problems with that design.    1. Controls can only be in one
container at a time, so any static controls you have will be
tricky. For example: Suppose you had a base form called BaseForm
which contained a TreeView which you make protected and static
so that all of the other (derived) instances of this class can
modify and display the same TreeView. This would not work for
multiple classes inheriting from BaseForm, because that TreeView
can only be in one container at a time. It would likely be on
the last form initialized. Though every instance could edit the
control, it would only display in one at a given time. Of
course, there are work-arounds,