C# 是否可以使用c在Datagrid视图中有两个列标题#

C# 是否可以使用c在Datagrid视图中有两个列标题#,c#,datagridview,C#,Datagridview,我喜欢将一个列标题文本跨越到各个列。你会怎么做?我找不到“Headercell.Span”。也可以有两个列标题吗 像这样 |全名|描述| |第一个|最后一个|州|年龄| 数据数据网格视图不支持此功能。您最终可以使用标签模拟标题,并防止列扩展超过标签宽度。您可能可以通过创建模板字段来实现这一点 在标题模板中,创建标题 在项模板中,只需为要包含的每个数据项添加语句 好的,这可能不是最优雅的解决方案(或者很可能是,不确定) 创建一个面板 将AutoScroll设置为True(此设置为关键点) 将

我喜欢将一个列标题文本跨越到各个列。你会怎么做?我找不到“Headercell.Span”。也可以有两个列标题吗

像这样

|全名|描述|

|第一个|最后一个|州|年龄|



数据数据网格视图
不支持此功能。您最终可以使用标签模拟标题,并防止列扩展超过标签宽度。

您可能可以通过创建模板字段来实现这一点

在标题模板中,创建标题


在项模板中,只需为要包含的每个数据项添加语句

好的,这可能不是最优雅的解决方案(或者很可能是,不确定)

  • 创建一个面板
    • 将AutoScroll设置为True(此设置为关键点)
  • 将DataGridView添加到面板
    • 确保仅启用垂直滚动, 否则,您将获得两个水平滚动条
  • 将TableLayoutPanel添加到面板
  • 现在将TLP(TableLayoutPanel)放置在面板内侧的最顶部。 确保只有一行,并根据需要添加尽可能多的列。 在每个柱中插入一个标签,现在不用担心对齐问题

    现在,将DGV(DataGridView)放置在面板内TLP的正下方,然后 将TLP列与DGV列对齐(从最右侧的列分隔符开始) 在TLP中,然后以您的方式工作(左)

    如果您的面板比DGV和TLP都宽,则将其向下收缩,直到出现滚动 显示栏(这是面板自动滚动的位置)。你不应该跑 该程序可查看滚动条

    尝试滚动,您将看到TLP(以及其中的标签)和DGV 一起行动

    就这样