Я бы поддержал ответ nobugz
. Даже если бы было #Include
утверждением, я не думаю, что это было бы хорошей идеей. Любое изменение во включаемом файле может легко сломать любой из ваших 8 подклассов пользовательских элементов управления.
НО : что может работать , , если , то все общие изменения могут быть интегрированы в пользовательские элементы управления подклассами через обработчики событий, или если изменения относятся к типу, в котором вы устанавливаете общие свойства ваших пользовательских элементов управления для определенных значений, это класс, который применяет изменения кода к любому переданному ему пользовательскому элементу управления:
Class CommonChanges
Private Readonly WithEvents DerivedUserControl As Windows.Forms.Control
Public Sub New(ByVal derivedUserControl As Windows.Forms.Control)
Me.DerivedUserControl = derivedUserControl
End Sub
Private Sub DerivedUserControl_OnClick(sender As Object, e As EventArgs) _
Handles DerivedUserControl.Click
' ... '
End Sub
... ' (more event handlers with common code go here) '
End Class
Затем вы определяете свои 8 пользовательских элементов управления, например:
Class MyDerivedUserControl
Extends Button ' (or whatever control it extends) '
Private ReadOnly Changes As CommonChanges
Public Sub New
Changes = New CommonChanges(Me)
' ^ 'CommonChanges' will subscribe to this class's events and possibly
' apply other changes to the control object 'Me'.
...
End Sub
End Class
Этот объект Changes
типа CommonChanges
будет подписываться на события вашего класса MyDerivedUserControl
и подключать к ним обработчики, определенные в CommonChanges
.
Кроме того, вы можете напрямую применить изменения к объекту Control
, переданному конструктору CommonChanges
.