使用自定义列将DataTable绑定到WPF DataGrid

时间:2010-11-02 11:48:39

标签: wpf datagrid

我想将datagrid与datatable绑定,以便它可以自动显示和更新数据回数据库。但同时我也想自定义数据网格的列,例如对于一个特定的数据表列,我想在数据网格内的组合框中显示该列的数据(通过组合框更改的数据也应该存储回数据库)。我怎样才能做到这一点 ?我是WPF的新手,所以关于它的任何样本对我都有帮助。 提前谢谢!

1 个答案:

答案 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>