boostool 2023-04-12 04:15 采纳率: 94.1%
浏览 34

在WPF的.net6.0中DataGrid里如何获取某列的所有数据?(标签-WPF|关键词-DataGrid)

在WPF的.net6.0中DataGrid里实现一个操作?
现在DataGrid的名字这列已经有数据,现在我想实现一个操作,我点击这个Button,,把名字这列的所有单元格的值和一个数组里的的字符串拼串,然后把拼接后的字符串显示在班级那列,请问如何做到?目前我不知道怎么获取名字那列的数据,以及不知道如何得到一共有多少行。

img

  • 写回答

1条回答 默认 最新

  • 「已注销」 2023-04-12 08:34
    关注

    以下内容部分参考ChatGPT模型:


    你可以使用DataGrid的Columns属性来获取所有列,然后遍历每一列获取其中的单元格数据。以下是具体的代码示例:

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        string[] stringArray = new string[] { "abc", "def", "ghi" }; // 用于拼接的字符串数组
    
        // 获取DataGrid中的名字列
        DataGridColumn nameColumn = dataGrid.Columns.FirstOrDefault(c => c.Header.ToString() == "名字");
        if (nameColumn != null)
        {
            // 遍历名字列的所有单元格并拼接字符串
            StringBuilder sb = new StringBuilder();
            foreach (var item in dataGrid.Items)
            {
                string name = nameColumn.GetCellContent(item)?.ToString();
                if (!string.IsNullOrEmpty(name))
                {
                    sb.Append(name);
                    sb.Append(string.Join("", stringArray)); // 将字符串数组拼接到名字后面
                }
            }
            string result = sb.ToString(); // 最终结果
            MessageBox.Show(result);
        }
    }
    

    以上代码中,我们首先获取DataGrid中的名字列,然后遍历所有行获取每个单元格的数据并拼接字符串。最终结果将会弹出一个消息框显示。注意,我们使用了StringBuilder来拼接字符串,这样可以避免频繁创建字符串对象导致的性能问题。


    如果我的建议对您有帮助、请点击采纳、祝您生活愉快

    评论

报告相同问题?

问题事件

  • 修改了问题 4月12日
  • 创建了问题 4月12日

悬赏问题

  • ¥15 需要手写数字信号处理Dsp三个简单题 不用太复杂
  • ¥15 数字信号处理考试111
  • ¥100 关于#audobe audition#的问题,如何解决?
  • ¥15 allegro17.2生成bom表是空白的
  • ¥15 请问一下怎么打通CAN通讯
  • ¥20 如何在 rocky9.4 部署 CDH6.3.2?
  • ¥35 navicat将excel中的数据导入mysql出错
  • ¥15 rt-thread线程切换的问题
  • ¥15 高通uboot 打印ubi init err 22
  • ¥15 R语言中lasso回归报错