给定两个WPF数据网格,是否可以通过编程方式将数据从一个Datagrid列复制到另一个?
因此,DataGrid A
,columns[1]
中的所有数据都会传递到Datagrid B
,columns[2]
。
答案 0 :(得分:2)
所以从DataGrid A(dialog.displayTable)复制到DataGrid B(只是displayTable)我是通过逐行迭代DataGrid A,然后逐列复制列数据到新行来完成的。然后将该行添加到DataGrid B.
在这个示例中,我还使用了一个单独的DataGrid,其头部设置为ComboBox,以便在我选择的情况下重新映射列。
foreach(DataRow displayRow in ((DataView)dialog.displayTable.ItemsSource).ToTable().Rows)
{
int i = 0;
DataRow drNew = displayTable.NewRow();
foreach (DataGridColumn selectedCol in dialog.SelectionTable.Columns)
{
drNew[(selectedCol.Header as ComboBox).SelectedIndex] = displayRow[i];
i++;
}
displayTable.Rows.Add(drNew.ItemArray);
}