none
validationのタイミングを、任意のタイミングにしたい。 RRS feed

  • 質問

  • いつも御世話になっております。

    Validationについて質問させていただきます。
    MVVMでコーディングしております。

    Validation のタイミングを、ボタンクリック等のタイミングで行いたいと思っております。
    ボタンクリックのCommand の中で、モデルの値をチェックし、入力チェックを行いたい、
    MessageBox等で表示しようと思っておりました。

    ところが、
    Modelのプロパティがint? の場合、数値以外はバインディングされません。
    画面上では、数値以外を入力してても、上記の理由でバインディングされないので、
    数値かどうかの判定すら行えません。

    そこで、質問ですが、validationのタイミングをBindingされてきたタイミングで行うのではなく、
    任意のタイミングで行いたいと思ったのですが、そのようなことは可能でしょうか?

    お手数をおかけしますが、ご指導宜しくお願い致します。
    2009年9月9日 7:26

回答

すべての返信

  • 標準では難しいと思います。自分でエラープロバイダーを実装するしかないと思います。

    (参考)
    Validation in Windows Presentation Foundation
    http://www.codeproject.com/KB/WPF/wpfvalidation.aspx


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    • 回答としてマーク a_山田 2009年9月10日 8:12
    2009年9月9日 8:29
    モデレータ
  • ご回答ありがとうございます。

    一筋縄ではいかないんですね。

    int?とバインドしている箇所を全て、stringにして今回は対応させて頂きたいと思います。
    ありがとうございました。

    2009年9月10日 2:52