Salut tout le monde, j'ai une petite question qui me turlupine.
Depuis WPF/Silverlight on parle bcp de binding et tout ca blablabla... et notamment de INotifypropertychanged qui permettraient de signaler à un composant que sa source a changé et de se mettre à jour (jusque là j'ai compris?)
ce que je ne comprends pas bien c'est que ce type de comportoment, on pouvait déja l'avoir sans avoir recours à INotifypropertychanged
voici un code qui explique mes dire
mon object Movie et une mini BLL qui est ma datasource
public class Movie
{
public string Title { get; set; }
public string Director { get; set; }
}
public class DataSource
{
public List<Movie> GetMovies()
{
List<Movie> movies = new List<Movie>();
movies.Add(new Movie { Director = "ioioioo", Title = "Matrix" });
movies.Add(new Movie { Director = "Jean", Title = "Matrix 2" });
return movies;
}
}
le code ma form
public partial class Form1 : Form
{
DataSource ds = new DataSource();
List<Movie> lmovies;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
lmovies = ds.GetMovies();
dataGridView1.DataSource = lmovies;
}
private void button1_Click(object sender, EventArgs e)
{
lmovies[0].Director = "MEEEEEEEEEEEEEe";
}
}
le simple fait de mettre Meeeeeeeeee dabs lmovies[0].Director, change ioioioo par MEeeeeee égalemenent dans l'interface. DOnc what's the point?
Qqc m'échappe ? ou c'est simplement un comportement lié au gridview dans ce cas ci ?
Merci d'avance