none
Como lanzar un método y event al cambiar el valor de una variable?

    Pregunta

  • Bueno, Hola a todos! Antes que nada, estoy usando C# y Wpf

    Básicamente tengo dos obstáculos.

    El primero:

    Tengo un string que le voy asignando un valor cada ves que mi collectionviewsource va cambiando de posicion.

    public string CurrentPosition
    		{
                    	get { return cvs.View.CurrentPosition.ToString(); }
    
    		}

    Ahora bien, ¿como necesitaría bindearlo en xaml, para que cuando actualice su valor, se vea reflejado en un TextBox bindeado?

    Algo así estoy haciendo, pero no se me actualiza.

    <TextBox Text="{Binding CurrentPosition, ElementName=userControl1}

    Creo que debería implementar "PropertyChanged" o algo similiar, pero no estoy al tanto del tema, si alguien pudiera explicármelo de manera comprensible..

    Segundo Problema:

    Como puedo crear un evento al momento que cambia el valor de un bool? Me gustaría hacer algo como esto:

    userControl1.boolChanged +=  new EventHandler(....

    y después si:

    void userControl1.boolChanged(object sender, EventArgs e)
    
    	{
    	/// if (!boolled)
    	///false, Lo que sea
    
    	}

    (Aclaro, este evento se dispara tras el cambio de valor del bool);

    Gracias :D


    • Editado TonyAns miércoles, 19 de diciembre de 2012 22:14
    miércoles, 19 de diciembre de 2012 22:13

Todas las respuestas

  • Debe implementar INotifyPropertyChanged en el objeto que alimenta al View.  Busque en Google/Bing ese nombre de interfase y encontrará docenas de ejemplos, desde sencillos hasta complejos.

    Lo del booleano cambiando no hace falta hacer nada adicional.  Puede cubrir este requerimiento usando el evento PropertyChanged de  INotifyPropertyChanged.


    Jose R. MCP
    Code Samples

    jueves, 20 de diciembre de 2012 3:00