创建一个回调函数给它的调用者返回一个值?

时间:2011-03-01 15:29:03

标签: .net vb.net properties callback

我正在创建一个类(“Class B”),它由另一个在VB.NET 3.5中实例化的类(“Class A”)使用。

我希望Class B每次在Class A中发生事件时,都会Class B读取分配给其中一个属性的值。

但是,我想在Class A中触发事件时,Class B将此属性值动态分配给该属性。

我正在考虑以某种方式在Class A中创建一个委托函数,该函数链接到Class B中的属性,这样当事件在Class B中触发时,它最终会调用委托中的委托Class A,以便将值返回Class B

我一直在阅读代表们(这就是我的想法),但我仍然坚持如何编写代码 - 有人可以请一些骷髅代码帮忙吗?

另外,我不确定这是最好的方法 - 是否有更好的解决方案?

感谢您的意见。

1 个答案:

答案 0 :(得分:1)

我可能会稍微从这两个班级中分离出来。也许创建一个单例,从A类创建值,然后从类B中调用它。

所以

Public Class MySingleton

   'Singleton related code here

   Public Property MyDynamicValue As Integer

End Class

然后在A组

Public Sub HandleClassBEvent(ByVal sender As Object, ByVal e As EventArgs) Handles ClassB.MyEvent
   MySingleTonInstance.MyDynamicValue = SetMyDynamicValue()
End sub

在B组中

   Public ReadOnly Property MyValueFromClassA Integer
      Get
           MySingletonInstance.MyDynamicValue
      End Get
   End Property