0

私のバインディングは次のように設定されています。

<Grid Name="motherGrid">
<Grid.RowDefinitions>
    <RowDefinition />
    <RowDefinition />
</Grid.RowDefinitions>
<DataGrid ItemsSource="{Binding}"  Name="LoadGrid" Grid.Row="0"></DataGrid>
<Button Grid.Row="1" Click="Button_Click_1">Hello</Button>
</Grid>

コードビハインドでは、データコンテキストをVMオブジェクトに設定します。VMオブジェクトには、無数の負荷のリストが含まれています。

 motherGrid.DataContext = VM.Loads;

ボタンが押されると、AddLoadメソッドが呼び出されます

public void AddLoad(Load load)
{
   Loads.Add(load);
   if (CollectionChanged != null)
       CollectionChanged(this, new NotifyCollectionChangedEventArgs(new NotifyCollectionChangedAction()));
}

ただし、CollectionChangedイベントは実際にはnullであるため、イベントがトリガーされることはありません。DataGridをCollectionChangedイベントに追加するにはどうすればよいですか?

4

1 に答える 1

0

コメントによると、私はこれを変更しました:

public List<Load> Loads = new List<Load>();

これに:

public ObservableCollection<Load> Loads = new ObservableCollection<Load>();
于 2012-11-21T19:23:59.987 に答える