WPFアプリケーションでは、キーボードショートカットをカスタマイズするための設定ウィンドウを作成しています。WPFでバインディングを失うことなくTextBox.Textを変更するにはどうすればよいですか?
テキストボックスではKeyDownイベントを処理し、Keyイベントを人間が判読できる形式(およびデータを保持する形式)に変換します。
テキストボックスには、この
<TextBox Text="{Binding ShortCutText, Mode=TwoWay}"/>
のように宣言され、イベントハンドラで、私はこれらの例の両方で両方
(sender as TextBox).Text = "...";
と
(sender as TextBox).Clear();
(sender as TextBox).AppendText("...");
を使用してみました、ビューモデルへのバインディングが機能しない場合、ビューモデルにはまだ古いデータが含まれており、更新されません。 (viewmodelからテキストボックスへの)他の方向へのバインディングは正常に動作します。
バインドを使用せずにコードからTextBox.Textを編集する方法はありますか? または、私のプロセスのどこかにエラーがありますか?
モデルでMVVMを使用しているときにテキストボックスの変更を自動的に反映するこの値を更新するのが理想的です。 – Deepesh
バインドに 'UpdateSourceTrigger = PropertyChanged'を追加しようとしました –
これは今までの古い質問ですが、人々がここで無視しているように見えることは、コントロールのプロパティが別のコントロールにバインドされている場合ですそれらはすべて親チェックボックスでチェックまたはチェックされません)。ここでは、VMには何も役立つものはありません。 –