2011-12-14 4 views
1

私は、WCF Ria ServicesおよびEntity FrameworkでMVVMパターンを使用してSilverlightアプリケーションを開発しています。 私のメタデータクラスでは、(twoway-databindingで)フロントエンドフォームからエンティティデータを提出すると完全にうまく動作するバリデーションがあります。Silverlight - 単一のプロパティを検証する

今、テキストボックスのLostFocusイベントの1つのプロパティを検証したいとします。

私はviewmodelのクラスでこのコードを試してみました:

​​

コードが実行されますが、何も起こりません。たとえプロパティFirstNameが空であっても例外ではありません(他のプロパティも試しました)。私が言及したように、私はフォームをEFに提出するときに検証作業を行います。

誰もがすべてを提出せずにただ1つのプロパティを検証するヒントを持っていますか?あなたのメタデータで

答えて

0

ウルプロパティは、このを追加する前に[必須(にErrorMessageが=「姓を入力してください。」)]、その後、コントロールにuはプロパティをバインドしているWHRはこの事モード=双方向、NotifyOnValidationError =真を追加し、 ValidatesOnDataErrors =

真これは答えのために:)

+0

感謝をuのを助けるかもしれません。しかし、私はすでにこのコードを用意しています。私が提出ボタンを押すと、すべてがうまく動作すると述べました。上のコード(Validator.ValidateProperty)のように、検証プロセスには影響しません。例では、私が試みているようなviewmodelクラスではなく、メタデータクラスでValidatePropertyしか見ていませんでした。 – user1097395

+0

** "**必須の(ErrorMessage =" Please FirstName "と入力してください)" **のような必須プロパティを使用する場合、そのプロパティがnullでないか、必要である必要がありますか? "**はlostfocusで正しく動作します。 .. –

+0

まあ、私はそれが値(必要)を持ってほしいです。そして、私は運がない他のプロパティ(10日しかない日付を検証しています)を試しました。しかし、やはり、すべては提出時に素晴らしい作品です。また、myEntity.myPropertyの値をチェックしてから、値が有効でないことを確認しました。私の質問は、viewmodelコンテキストでValidator.ValidatePropertyを使用できますか?これはメタデータでのみ機能しますか? – user1097395

関連する問題