2010-11-02 70 views
0

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

回答

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> 

+0

我想在运行时显示网格内的组合框。该场景是我的数据网格连接到数据表,在运行时,这个网格将填充数据表的数据,所以在这一点上,我想显示在组合框中的一列的值,应该显示在数据网格内。我想在运行时创建datagrid列,因为它们可能因数据表而异。任何这样做的例子... – 2010-11-02 16:42:07