2010-12-01 3 views
2

J'ai la zone de texte et je veux valider est email valide dans la zone de texte sur le bouton "enregistrer" cliquez sur. Mais la validation standard a un comportement étrange.Validation Silverlight. Problème avec la validation email

Quand j'imprime un nouveau courriel, il y a toujours une erreur et c'est très ennuyeux. Je veux montrer l'erreur seulement après le clic de bouton et alors la zone de texte doit devenir valide si a obtenu le foyer. Y a-t-il un moyen standard de faire cela dans LE MODÈLE-VIEW-VIEWMODEL.

+2

Veuillez inclure du code –

Répondre

3

Le comportement par défaut pour la modification de la valeur liée dans TextBox est via LostFocus. Vous devez changer le UpdateSourceTrigger pour être explicite.

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

Puis dans votre code derrière vous avez maintenant d'appeler explicitement UpdateSource via votre gestionnaire Button de clic.

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