我使用DataTable作为DataGrid的源代码:
dt.Columns.Add("Update?", typeof(Boolean)); dt.Columns.Add("Emulator", typeof(String)); dt.Columns.Add("Path", typeof(String)); ... dataGrid1.ItemsSource = dt.DefaultView;
DataGrid的XAML代码:
因此,如果DataTable为空,我会得到一个空的DataGrid,显示三个标题名称.
如果DataTable包含项,则DataGrid会获取额外的列,而不是填充已存在的列.
DataGrid如何填充现有列?
组 AutoGenerateColumns="False"
如果设置此属性,true
则将自动创建列
而且你还需要设置绑定,示例代码:
<DataGrid Name="DG1" AutoGenerateColumns="False" ItemsSource="{Binding}"> <DataGrid.Columns> <DataGridCheckBoxColumn Header="Online Order?" IsThreeState="True" Binding="{Binding OnlineOrderFlag}" /> </DataGrid.Columns> </DataGrid>