たとえば、TextBox の ContextMenu があり、ユーザーが ContextMenu のメニュー項目をクリックしたときに、TextBox の Text プロパティを何らかの値に設定したいと考えています。
これは可能ですか?
これをすべて XAML で実行できるかどうかを具体的に尋ねている場合は、できません。コマンドと UI インタラクションが、View の残りの部分がその値に依存 (バインド) している ViewModel を更新できるようにすることは、正しいアプローチです。
コードを見ずに: TextBox の Text プロパティが既にある種の ViewModel にバインドされている場合 (そして、私はそれを推測することしかできません)、そのプロパティをバインド/設定して、 でMenuItem
選択した の目的の結果にしますContextMenu
。あなたが正しいと仮定すると、Binding
それに応じて TextBox の値が更新されます。
それが役立つことを願っています。
Blend SDK には、利用可能なChangePropertyActionがあります。
このチュートリアルが役立つかもしれません (チュートリアルは Silverlight を対象としていますが、これは WPF でも同じです)。
このアクションを使用するために Blend は必要ないことに注意してください。Visual Studio でも使用できますが、コードを手動で入力する必要があります。