WPFでは、次のようにUpdateSourceTriggerを利用することで、ユーザーがデータに変更を加えるたびに、基になるデータモデルを更新できます。
<TextBox Text="{Binding Path=TextProperty, UpdateSourceTrigger=PropertyChanged}"/>
Window Phoneでは、UpdateSourceTriggerはXAML仕様に含まれていませんでした。これを実現するには、次のようなTextChangedハンドラーが必要でした。
(sender as TextBox).GetBindingExpression(TextBox.TextProperty).UpdateSource();
Windows 8では、UpdateSourceTriggerも省略されると思いました-私は正しかったです。しかし、GetBindingExpression()も欠落していることを知って驚いた。
Windows 8で、UpdateSourceTriggerを使用したWPFおよびGetBindingExpression()。UpdateSource()を使用したWindows Phoneで達成した最善の手法は何ですか?
注意:この質問はWindows 8(Metro)開発用です。この他の質問(Windows Phone7TextBoxに相当する"UpdateSourceTrigger= PropertyChanged")は、WindowsPhone開発用です。混同しないでください。
調査の問題として、この例(私が作成したもの)は、TextBoxオーバーライドを使用して、更新を引き起こす2つのプロパティ間でテキスト値を交換します。これに基づいています。しかし、もっと良い方法はありますか?何かエレガント?