首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在DataGrid中添加列?

问如何在DataGrid中添加列?
EN

Stack Overflow用户
提问于 2021-08-18 14:51:03
回答 1查看 34关注 0票数 0

我基于this other question来显示一个包含一些列(还没有要填充的行,只有列)的DataGrid:

我有以下源码:

cs文件:

代码语言:javascript
复制
public partial class MainWindow : Window
{
    private DataTable dt_main;
    ...
}

private ...first_Click(object sender, ...)
{
    dt_main = new DataTable("dt_main"); // just a default name, no such table
    DataGrid1.DataContext = dt_main.DefaultView;
}

private ...second_Click(object sender, ...)
{
    dt_main.Columns.Clear();
    ...
    while (...)
      dt_main.Columns.Add(tmp_ColName);
}

XAML文件:

代码语言:javascript
复制
<DataGrid x:Name="DataGrid1" ... AutoGenerateColumns="True" ItemsSource="{Binding}"/>

我单击first_click (用于填充表的列表),然后单击second_click (用于选择表),但是尽管填充了数据表的Columns属性,但我在DataGrid中什么也看不到,正如您在以下屏幕截图中看到的那样( DataGrid由红色箭头显示):

​

​

有人知道我错过了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-18 15:06:20

只有在实际设置了ItemsSource属性时,才会自动生成列。

可以在将列添加到DataTable后显式设置它,也可以将列添加到DataGrid

代码语言:javascript
复制
private ...second_Click(object sender, ...)
{
    //add the columns to dt_main...

    DataGrid1.ItemsSource = null;
    DataGrid1.ItemsSource = dt_main.DefaultView;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68834654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档