Una de los feacture que trae Visual Studio, para quienes desarrollamos para Windows Phone & Windows[RunTime] PropertyChanged, esta se encuentra en el namespace System.ComponentModel.
La funcion de PropertyChanged es simple notificar cuando hay un cambio en una propiedad.
Las propiedades las declaramos de la siguiente forma:
Public string MiVariable { get; set;}
En este ejemplo crearemos una clase con el nombre GPChanged (General Property Changed)
Vamos a trabajar dentro de la clase
El primer paso que debemos hacer es importar la librería necesaria
Using System.ComponenteModel;
Le asignamos la interface INotifyPropertyChanged al main de nuestra clase
public class GPChanged: INotifyPropertyChanged
Declaración de variables y/o inicio
private string TextoEjemplo; public GPChanged () { TextoEjemplo = "Hola Esto es desde la VMBase"; }
Crearemos un evento con el nombre PropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
Declaramos una propiedad con el nombre Textoejemplo
public string Textoejemplo { get { return TextoEjemplo; }//Captura el valor que tiene la variable TextoEjemplo y es utilizado en la propiedad Textoejemplo set { TextoEjemplo = value; //cuando asignamos un valor a la propiedad Textoejemplo decimos que la variable privada debe de obtener el valor de la propiedad. RaisePropertyChanged("Textoejemplo "); //llamamos al metodo encargado de hacer la notificacion y pasamos como parametro el nombre de la propiedad como string } }
Veamos como crear los eventos y/o metodos necesarios
public event PropertyChangedEventHandler PropertyChanged; // Creamos un Evento llamado PropertyChanged public void RaisePropertyChanged(string propertyName) //Creamos un metodo que recibe un parametro String { if (PropertyChanged != null) //Verificamos si el PropertyChanged es distinto de null PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); //llamamos al PropertyChanged y pasamos el nombre de la propiedad a notificar } private void UpDateAll() { RaisePropertyChanged(String.Empty); //Este evento sirve para notificar a todas las propiedades. }
Hasta la Proxima
Source: https://mspeduardoramirez.wordpress.com