(VB.NET VS2010)我在几个项目中使用了继承基本系统控件的自定义控件库(称之为A-controls),现在我想使用第三方库的组件(称之为B-控件)以及为了在我的项目中轻松集成这些组件,我想创建另一个自定义的组件库(称之为C-Controls),它继承了B-Controls但具有相同的A-Controls属性(类和属性的相同名称) ),目标只是在我的项目中更改库引用。
我的问题是,B-Controls有一个类似于A1属性的B1属性,所以在我的C-controls中我有一个直接继承B-Controls控件的组件,我添加了类似的A1-具有相同名称的属性,所以我在C-Controls中控制了B1-Property和A1-property,我想在它们改变时同步它们的值。
有可能吗?是否可以不修改每个控件的事件?
解释可能是一团糟...如果需要,我会完成更多。
提前致谢。
答案 0 :(得分:1)
好的,如果我以任何方式正确理解您,您可以使用属性的Get / Set方法通过使用单个后端变量同步它们
Private _MyValue As Integer
Public Property A1Property As Integer
Get
Return _MyValue
End Get
Set(value As Integer)
_MyValue = value
End Set
End Property
Public Property B1Property As Integer
Get
Return _MyValue
End Get
Set(value As Integer)
_MyValue = value
End Set
End Property
现在发生的是,每次更改A1Property
或B1Property
实际上都会更改相同的变量。同样,如果您查询A1Property
或B1Property
的当前值,则会返回此值。因此他们被同步了。
如果这就是你的要求,请告诉我。
修改强>
如果您实际上没有定义B1Property
(可能是这种情况,请再次阅读您的问题),您只需从新B1Property
A1Property
即可
Public Property A1Property As Integer
Get
Return Me.B1Property
End Get
Set(value As Integer)
Me.B1Property = value
End Set
End Property
这会做同样的事情。