c# - 如何将列从一个数据网格复制到另一个
问题描述
给定两个 WPF 数据网格,是否可以通过编程将数据从一个 Datagrid 列复制到另一列?
所以 , 中的所有数据DataGrid A
都columns[1]
将传递到Datagrid B
, 中columns[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);
}
推荐阅读
- javascript - VueJS:是否可以将扩展运算符用于计算属性?
- python - 删除对象时是否可以在 django admin 中显示加载消息?
- npm - 如何使用 DefinePlugin 并尝试将其登录到控制台
- python - 文件编码 VS Code
- git - 使用动态参数创建 Git 别名
- node.js - 从 Azure Blob 存储文件名下载文件时出现的问题包含哈希 (#)
- javascript - 通过使用 Javascript 搜索元素 href 添加内容
- tree - 使用中序和前序遍历生成二叉树
- cloudera - 色调超过 Impala 错误。错误状态:3(不支持的机制类型 PLAIN)
- azure - 带有串行控制台的 Fortinet 虚拟机的 Azure 运行命令?