私はMVVMが初めてです。ボタンをクリックしたときにテキスト ボックスにメッセージを表示するサンプル アプリケーションを作成しました。私のコードでは、ボタン コマンドは正しく機能していますが、プロパティがテキスト ボックスにバインドされていません。MVVMを使用してプロパティをテキストボックスにバインドする方法は?
私のコードは以下のようなものです。
意見
<TextBox Name="MessageTextBox" Text="{Binding TestMessage}"/>
<Button Content="Show" Name="button1" Command="{Binding ShowCommand}">
<!-- Command Handler -->
</Button>
モデルを見る
MyMessage myMessage;
public MainViewModel()
{
myMessage=new MyMessage();
}
//inside the ShowCommand Handler
TestMessage="Hello World";
// A Property to set TextBox Value.
モデル
public class MyMessage: INotifyPropertyChanged
{
private string testMessage;
public string TestMessage
{
get { return testMessage; }
set
{
testMessage= value;
OnPropertyChanged("TestName");
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}