apprentissage wpf avec mvvm (en utilisant EF comme ORM).échec de la validation wpf mvvm
Dans mon modèle de vue que j'ai la propriété:
//---------------ClientNew
public const string ClientNewConst = "ClientNew";
private TBL_CLIENT _clientNew = new TBL_CLIENT();
public TBL_CLIENT ClientNew
{
get
{
return _clientNew;
}
set
{
if (_clientNew == value)
{
return;
}
var oldValue = _clientNew;
_clientNew = value;
// Update bindings, no broadcast
RaisePropertyChanged(ClientNewConst);
}
}
où TBL_CLIENT - est un entittyobject qui reflète table TBL_CLIENT dans DB
maintenant, à mon avis je lie groupe de zones de texte comme celui-ci (par exemple uniquement pour le prénom du client):
<TextBox Style="{StaticResource ResourceKey=entryFormTextBox}"
Text="{Binding ClientNew.CLIENT_FIRST_NAME,
ValidatesOnDataErrors=True,
NotifyOnValidationError=true,
ValidatesOnExceptions=True,
UpdateSourceTrigger=LostFocus}"
Grid.Column="1"
Grid.Row="1" />
J'ai essayé d'utiliser différents déclencheurs pour updatesource .. encore Teh validation ne fonctionne pas.
oh, j'ai mis en œuvre IDataErrorInfo interface dans mon viewmodel (mais il frappe jamais ..)
#region IDataErrorInfo Members
string IDataErrorInfo.Error
{
get { throw new NotImplementedException(); }
}
string IDataErrorInfo.this[string columnName]
{
get
{
if (string.IsNullOrEmpty("ClientNew.CLIENT_FIRST_NAME"))
{
return "Client Name is required";
}
return null;
}
}
#endregion
donc, question .. comment puis-je mettre en œuvre la simple validation possible en utilisant IDataErrorInfo pour mon cas , où je n'ai pas la propriété distincte définie dans ModelView pour chacun de l'objet entité, mais la propriété prend l'objet entité entière?
merci à l'avance, Alex
merci, va vérifier. – HotFrost