在Silverlight中,将自定义属性添加到生成的Linq类+;管理事件
我在WCF中使用LINQtoSQL类。这些类从WCF方法返回给Silverlight。现在,我想在生成的类(Silverlight端)上添加一个自定义属性,并基于另一个属性的另一个PropertyChangedEvent在该特定属性上触发PropertyChangedEvent。需要说明的是,这里有一段代码不起作用:在Silverlight中,将自定义属性添加到生成的Linq类+;管理事件,silverlight,linq,datacontract,deserialization,Silverlight,Linq,Datacontract,Deserialization,我在WCF中使用LINQtoSQL类。这些类从WCF方法返回给Silverlight。现在,我想在生成的类(Silverlight端)上添加一个自定义属性,并基于另一个属性的另一个PropertyChangedEvent在该特定属性上触发PropertyChangedEvent。需要说明的是,这里有一段代码不起作用: 问题是New()中的代码从未执行过,因此我不知道ConnectionType何时更改,因此无法触发ConnectionTypeEnum上的PropertyChanged。(此属
问题是New()中的代码从未执行过,因此我不知道ConnectionType何时更改,因此无法触发ConnectionTypeEnum上的PropertyChanged。(此属性用于单向绑定,因此我需要它)
有人能解决这个问题吗
谢谢您可以使用
_
序列化时的公共子对象(上下文作为StreamingContext)
AddHandler Me.PropertyChanged,AddressOf _PropertyChanged
端接头
Partial Public Class DataConnectionPublic Sub New() AddHandler Me.PropertyChanged, AddressOf _PropertyChanged End Sub
Private Sub _PropertyChanged(ByVal sender As Object, ByVal e As PropertyChangedEventArgs) If e.PropertyName = "ConnectionType" Then Me.RaisePropertyChanged("ConnectionTypeEnum") End If End Sub Private _ConnectionTypeEnum As String Public ReadOnly Property ConnectionTypeEnum() As String Get Select Case Me.ConnectionType Return //Something based on ConnectionType // End Select End Get End Property End Class
<OnDeserializedAttribute()> _ Public Sub WhenDeserialized(context As StreamingContext) AddHandler Me.PropertyChanged, AddressOf _PropertyChanged End Sub