Tout compile, mais lors de l'exécution, une ligne vide est affichée. Si j'essaie de modifier une entrée, il est dit "Pas de set XPath". Qu'est-ce que je fais mal? J'ai essayé une tonne de variations, de ne pas avoir l'interface INotifyPropertyChanged etc.Impossible de faire fonctionner DataGrid avec ObservableCollection
La classe de base est:
public class Variable : INotifyPropertyChanged
{
public string Name;
public string Value;
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
}
La collection observable est:
public class VariableCollection:ObservableCollection<Variable>
{
public VariableCollection()
: base()
{
}
public VariableCollection(List<Variable> list)
: base(list)
{
}
}
La liaison est:
public VariablesView(VariableCollection variables)
{
InitializeComponent();
gridContent.ItemsSource = variables;
}
Le code XAML est:
<DataGrid Name="gridContent" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" Header="Name" />
<DataGridTextColumn Binding="{Binding Value}" Header="Value" />
</DataGrid.Columns>
</DataGrid>
OMG je ne perdu que quatre heures coincé à ce sujet. JE VOUS REMERCIE! – Kenoyer130
J'utilise souvent getter setter dans mon code mais je l'ai manqué cette fois. Merci beaucoup :) –