メンバーを新しいインスタンスに置き換えたときに、ViewModel に View を更新させることはできません。
私のViewModelには、TestメンバーがOnPropertyChangedによって変更されたという適切な(私が信じている)通知が含まれています(他のメンバーへのバインディングで動作することが確認されています):
public class ServerViewModel
{
private TestViewModel _Test;
public TestViewModel Test
{
get {return _Test;}
set {_Test = value;OnPropertyChange("Test");}
}
...
...
}
コード ビハインドでは、MainWindow() コンストラクターで ServerViewModel をインスタンス化し、データ コンテキストを設定します。
VServer = new ServerViewModel();
this.DataContext = VServer;
私のビューモデルには、新しいインスタンスを割り当ててテストをロードする関数があります:
VServer.Test = new Test("c:\test\test3.test");
XAML は、次の方法で Test のメンバーにバインドしようとします。
<TextBox x:Name="TextTestName"
...
Text="{Binding Test.Name, Mode=TwoWay}"/>
しかし、テストをロードすると、コントロール バインディングは新しいオブジェクトが作成されたことを認識せず、コンテンツを更新しません。何か案は?