私はWPFでMVVMを使用する初心者で、テキストボックスやラベルの値を変更することは不可能に思えます。ここに例があります。 XAMLでC#WPF MVVM TextBoxの値が変更されない
:
名の元の値は、 "ピーター" です。
しかし、ViewModelでコマンドを呼び出すボタンを押した後、Nameの値を "John"に変更します。したがって、テキストボックスの値もJohnに変更されるとします。ただし、変更はありません。
私はネット上で多くの例を見つけましたが、どれもこの種の機能を実装していませんでした。私がそれらから学んだことは、ListViewのCommandとItemsSourceを使うことです。 ボタンを使用してビューのItemsSourceを変更するコマンドを使用すると、ListViewの値が変更されます。 Binding to ItemsSourceが変更されると、その値は自動的に変更されます。
ただし、TextBoxまたはLabelの値を変更することはできません。バインディングの値が既に変更されています。
実際は、私はMVVMではかなり若いです。私はまだ私が知らないほど多くを持っていると思う。 ボタンをクリックした後にテキストボックスを変更するためにどのようにすべきかの例を教えてください。ちなみに、私はボタンのコマンドをどのように作るのかについてはあまりよく分かりません。それはネットからのサンプルで見つけたほどのコードを含んでいるようです。単純な方法はありますか?
ありがとうございました。
から一例である、あなたのViewModelは 'INotifyPropertyChanged'を実装していますか? –
+1 Stephan私はそれがおそらく答えであると書いてお勧めします。 –
ありがとう!私は本当にそうしなかった。 – user883434