2010-12-01 9 views
2

私はテキストボックスを持っています。有効な電子メールは、 "保存"ボタンのテキストボックスにあります。Silverlight検証。電子メールの検証に問題があります

しかし、標準の検証には奇妙な動作があります。私が新しい電子メールを印刷すると、それは常にエラーを伴います。私は、ボタンをクリックした後でエラーを表示したい場合、フォーカスがあればテキストボックスが有効になっている必要があります。 MODEL-VIEW-VIEWMODELでこれを行う標準的な方法がありますか?

+2

いくつかのコードを含めてください –

答えて

3

TextBoxのバインド値を変更するデフォルトの動作は、LostFocusです。 UpdateSourceTriggerを明示的に変更する必要があります。

<TextBox Name="MyTextBox" 
     Text="{Binding Path=FirstName, UpdateSourceTrigger=Explicit}" /> 

は、次に、あなたの後ろにあなたのコード内で明示的あなたの Buttonクリックハンドラを経由して UpdateSourceを呼び出す必要があります。

BindingExpression be = MyTextBox.GetBindingExpression(TextBox.TextProperty); 
be.UpdateSource();