我想将datagrid与datatable绑定,以便它可以自动显示和更新数据回数据库。但同时我也想自定义数据网格的列,例如对于一个特定的数据表列,我想在数据网格内的组合框中显示该列的数据(通过组合框更改的数据也应该存储回数据库)。我怎样才能做到这一点 ?我是WPF的新手,所以关于它的任何样本对我都有帮助。 提前谢谢!
答案 0 :(得分:3)
您需要将DataGrid的AutoGenerateColumns设置为false,然后指定您自己的列列表。这是一个粗略的例子:
<DataGrid.Columns>
<DataGridTextColumn Header="Date" Binding="{Binding Path=MyDateColumn, StringFormat={}{0:MM/dd/yy hh:mmt}}" />
<DataGridTextColumn Header="Name" Binding="{Binding Path=NameColumn}" />
<DataGridTemplateColumn Header="SomeValue">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{StaticResource ComboBoxItems}"
SelectedItem="{Binding Path=SomeValueColumn}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>