2012-05-02 15 views
0

エンティティはすでにPropertyChangedを実装しています。プロパティが変更されると、PropertyChangedが発生します。
私が今したいのは、実際に値が変更されていなくても(バインディングの目的で)コード内でPropertyChangedイベントを発生させたいのです。私は、エンティティの外部からのような何かをしたい:プロパティの変更イベントをEntityの外部から呼び出す方法は?

MyEntity.RaisedPropertyChanged("myProperty"); 

はまた、エンティティは、メソッドをOnPropertyChangedをしているが、それが保護され、クラスまたはそのサブクラスの内部のみ利用することを知っています。

このリクエストを実装する方法は?

答えて

0

これを行う必要がない理由を他の人が指摘するかもしれませんが、簡単な方法の1つは、保護されたメソッドにリレーするパブリックメソッドを追加することです。

public partial class MyEntity 
{  
    public void RaisePropertyChanged(string propertyName) 
    { 
     this.RaisedPropertyChanged(propertyName); 
    } 
} 
+1

ありがとうございました。試してみて、デッドループを起こしてアプリケーションをクラッシュさせるのは簡単だとわかりました。 – KentZhou

+0

うん、それは決して良いことではない –

0

保護メソッドを呼び出す部分クラスMyEntityにパブリックメソッドを作成できます。

関連する問題