J'ai une classe dans mon application SL4 qui représente une seule entité sur laquelle l'utilisateur saisit des données. Je fais la validation de données comme suit:Silverlight: Désactiver Bouton sur l'erreur de validation? (Problème de validation)
private double cost;
public string Cost
{
get
{
return String.Format("{0}{1}", DOLLAR_SYMBOL, cost);
}
set
{
string price = getPriceFromCost(value);
if (!double.TryParse(price, out cost))
{
throw new ArgumentException("Please enter a number.");
}
OnPropertyChanged("Cost");
}
}
Cela fonctionne très bien. Cependant, si l'utilisateur entre une valeur valide, alors une valeur invalide, ignore l'erreur de validation, et soumet les soumissions, l'entité sera créée avec l'ancienne valeur valide. Je voudrais plutôt forcer l'utilisateur à corriger l'erreur. Comment puis-je désactiver le bouton "Ajouter"? En outre, je voudrais faire d'autres formes de validation lorsque l'utilisateur clique sur le bouton d'ajout, mais je veux quand même que le bon effet de la boîte de saisie de texte soit surligné en rouge, avec le message qui apparaît. Comment puis-je faire cela sans lancer ArgumentExceptions
?
droit, mais ne serait pas je besoin d'un bool pour chaque champ validé? 'IsValidName',' IsValidDate', etc. Si l'utilisateur ne parvient pas à définir l'entrée pour 'Date', je ne veux plus activer le bouton tant qu'une entrée valide n'a pas été présentée pour ce champ. –
c'est un article de blog très utile. J'ai ajouté '[Required]' à plusieurs propriétés dans ma classe d'entité de données. Cependant, rien ne se passe à l'avant. Comment puis-je effectuer cette validation? –