У меня есть DataGrid, как это:Привязка к List <>
<dg:DataGrid Name="dg" AutoGenerateColumns="False" CanUserDeleteRows="True">
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Header="Product Code" x:Name="columnProductCode" Binding="{Binding Path=Product.ProductCode}" IsReadOnly="True" ></dg:DataGridTextColumn>
<dg:DataGridTextColumn Header="Product Name" x:Name="columnProductName" Binding="{Binding Path=Product.Name}" IsReadOnly="True" ></dg:DataGridTextColumn>
<dg:DataGridTextColumn Header="ProductMeasure" x:Name="columnDonViTinh" Binding="{Binding Path=Product.Measure IsReadOnly="True"></dg:DataGridTextColumn>
<dg:DataGridTextColumn Header="Quantity" x:Name="ColumnQuantity" Binding="{Binding Path=Quantity IsReadOnly="False"></dg:DataGridTextColumn>
</dg:DataGrid.Columns>
</dg:DataGrid>
В коде позади, у меня-структуру, как это:
private struct ProductDetail
{
public TProduct Product { get; set ; } // TProduct is a class provied by a web service
public int Quantity { get; set; }
}
и список, как это:
private IList<ProductDetail> bs = new List<ProductDetail>();
Я пытался заполнить данные до «bs». И привязка вот так:
this.dg.ItemsSource = this.bs;
Все в порядке. Я могу вставить новую строку, удалить строку, но когда я попытаюсь изменить колонку «Количество», нажмите на заголовок datagrid (чтобы прибегнуть) -> изменить значение столбца «Количество».
Как исправить эту проблему. Спасибо заранее.
Спасибо Майк Браун и Брент. Я попробовал «UpdateSourceTrigger = PropertyChanged», но он не работает. – hanuman0503