我的程序存在问题,其核心使用类变量来连接,控制和提取名为PowerShape的CAD / CAM软件中的信息。
我正在尝试做的是听取这个类变量来检测其属性的变化,如果你在Powershape中做某些事情就会发生这种变化。这些将包括在Powershape内部更改的活动窗口或模型。在进行更改时,类变量正在更新,但我无法弄清楚如何检测它。
当声明类变量时,它连接到Powershape然后你可以访问它的属性:
Dim powershapeRoot As New PSAutomation(Delcam.ProductInterface.InstanceReuse.UseExistingInstance)
Dim PSmodelname = PowershapeRoot.activemodel.name
现在我想听一下变量属性“PowershapeRoot.activemodel.name”,看它是否有变化
怎么做?
答案 0 :(得分:0)
要检测属性中的更改,可以使用INotifyPropertyChanged接口。
您将从MSDN找到here文档。
在您的属性的setter中,您需要包含用于引发事件的代码。您可以在VB.NET中找到以下示例:
Public Class Demo Implements INotifyPropertyChanged
Private nameValue As String = String.Empty
Public Event PropertyChanged As PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged
Private Sub NotifyPropertyChanged(ByVal info As String)
RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(info))
End Sub
Public Property name() As String
Get
Return Me.nameValue
End Get
'Raise the event in the setter
Set(ByVal value As String)
If Not (value = nameValue) Then
Me.nameValue = value
NotifyPropertyChanged("name")
End If
End Set
End Property
End Class