You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WPF C#后台代码中获取DataGrid的所有表头文本

获取WPF DataGrid所有表头文本的解决方案

当然没问题!你完全可以轻松获取DataGrid的所有表头文本,并且以集合形式返回,就像你获取数据项那样操作就行。

快速实现方式(LINQ写法)

直接遍历DataGrid.Columns集合,提取每一列的Header属性值,用LINQ可以一行代码生成字符串集合:

// 生成包含所有表头文本的List<string>
var headerTexts = dataGridUserSalesRep.Columns
    .Select(column => column.Header?.ToString() ?? string.Empty)
    .ToList();

传统循环写法(适合需要额外逻辑的场景)

如果你需要在遍历过程中做一些额外的判断或处理,比如过滤某些列,也可以用foreach循环来收集:

List<string> headerTexts = new List<string>();
foreach (DataGridColumn column in dataGridUserSalesRep.Columns)
{
    // 处理Header可能为空的情况,避免空引用异常
    string headerText = column.Header?.ToString() ?? string.Empty;
    headerTexts.Add(headerText);
}

为什么这个方法有效?

你的DataGrid是手动定义列(AutoGenerateColumns="False"),每一列的Header属性就是你在XAML里设置的表头文本(比如"Currency"、"Total Profit"这些)。DataGrid.Columns集合包含了所有界面上显示的列,所以直接遍历它就能拿到所有表头内容,顺序和界面显示的完全一致。

小提示

一定要处理Header为null的情况哦——如果某列没有设置Header,用?? string.Empty可以避免空引用异常,保证代码的稳定性。

内容的提问来源于stack exchange,提问作者Muhammad Mehdi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:05:27