だから私はだからここにこのクラス/構造体のすべてのメンバーに対してINotifyPropertyChangedを発生させますか?
Class Dataclass
{
var data
var data;
var data;
}
class DataViewModel
{
private Dataclass thing;
public string thingPropertyName = "thing";
public Dataclass Thing
{
get { return thing; }
set { thing = value; RaisedPropertyChanged(thingPropertyName);}
}
}
ようにセットアップされたプロジェクトは私の問題である持っている:私は私のModelViewクラスでシングフィールドを経由してサブプロパティにバインドする場合のいずれかの場合、バインディングは更新されません。クラスのメンバーは、オブジェクト全体が変更された場合にのみ変更されます。私が意図していると考えているものです。
これを回避するにはどうしたらよいですか?含まれているDataclassのメンバーに何かを行えば、私のバインディングは正しく更新されますか?
私はそうのように、親クラスのプロパティにサブクラスのすべての要素をラップした見てのだ最初の事:この作品
public var Data
{
get { return thing.Data; }
set { thing.Data = value; RaisePropertyChanged(DataProperyName);}
}
、しかし、私はまだ問題がある場合、サブクラスオブジェクトが初期化されます。私が見ることができる唯一の解決策は、クラスが初期化されたときに各要素のRaisedPropertyName()を手動で呼び出すことです。これは最適な方法ではないようです。私はもっと良いアプローチがあることを期待していました。ありがとう。
素敵なアバター(他人のことを思い出させます):) –