2011-06-23 4 views
2

je un objet MyPerson avec les propriétés FirstName, LastName et FullNameActualiser l'interface utilisateur graphique de source de données dans Silverlight

public string FullName 
{ 
    get {return LastName + " " + FirstName;} 
    set {...} 
} 

Je lie la myPerson à un UserControl, dans lequel je lie Prénom, Nom et FULLNAME à 3 texboxes.

Maintenant, lorsque je modifie le prénom ou le nom, j'ai besoin d'indiquer à UserControl de "mettre à jour" le nom complet.

Quelle devrait être cette commande de "mise à jour"?

Silverlight 4

Répondre

3

Vous devriez probablement à l'interface INotifyPropertyChanged. Cela rendra votre vie plus facile.


Exemple:

public class Person : INotifyPropertyChanged 
{ 
    public event PropertyChangedEventHandler PropertyChanged; 

    private void NotifyPropertyChanged(String info) 
    { 
    if (PropertyChanged != null) 
    { 
     PropertyChanged(this, new PropertyChangedEventArgs(info)); 
    } 
    } 

    private String _FirstName; 
    private String _LastName; 

    public String FirstName 
    { 
    get 
    { 
     return this._FirstName; 
    } 
    set 
    { 
     if (this._FirstName != value) 
     { 
     this._FirstName = value; 
     this.NotifyPropertyChanged("FirstName"); 
     this.NotifyPropertyChanged("FullName"); 
     } 
    } 
    } 

    public String LastName 
    { 
    get 
    { 
     return this._LastName; 
    } 
    set 
    { 
     if (this._LastName != value) 
     { 
     this._LastName = value; 
     this.NotifyPropertyChanged("LastName"); 
     this.NotifyPropertyChanged("FullName"); 
     } 
    } 
    } 

    public String FullName 
    { 
    get 
    { 
     return String.Format("{0} {1}", this.LastName, this.FirstName); 
    } 
    } 
} 
+0

J'ai essayé de l'implémenter. Notifier FirstName, notifier LastName ... mais cela ne semble pas wrok – serhio

+0

@serhio: Voir ma réponse mise à jour. –

+0

Maintenant, je vois que je devrais Notifier non seulement la propriété modifiée, mais aussi les propriétés dépendantes .... C'est un peu embarrassant ... si nous ne connaissons pas a priori toutes les propriétés dépendantes ... mais c'est un solution cependant ... – serhio

Questions connexes