かずきのBlog@hatena

日本マイクロソフトに勤めています。XAML + C#の組み合わせをメインに、たまにASP.NETやJavaなどの.NET系以外のことも書いています。掲載内容は個人の見解であり、所属する企業を代表するものではありません。

TextBoxのテキストが変更される度に入力値のチェックがしたいね

WPFだとUpdateTriggerにPropertyChangedみたいなのを設定すれば、すぐなんですがSilverlightには残念ながらこの設定項目はありません。ではどうするのか?というと愚直にTextChangedイベントでBindingのオブジェクトを取得してTargetからSourceへ値を更新するという処理を書けば要件は実現できます。

こういった定型処理はBehaviorとして部品化してしまうと楽ちんです。PrismにUpdateTextBindingOnPropertyChangedというそのものずばりという部品があるので、参考にしてみるといいと思います。

ここらへんをまとめて近々コードレシピあたりに1つサンプルコードを上げようと思います。