VS2019 C# winfrom DataGridView做的多行表头控件及实例源码

网友的blog提供了一个用户控件。

https://www.cnblogs.com/HopeGi/archive/2013/04/03/2982837.html

源码下载:

https://download.csdn.net/download/xjzdr/16382781

 

我整理了一下,有几点说明一下:

1、提供的是一个用户控件的源码,只需要把网友的源码回到项目中即可。

2、编译一下,这个控件就会出现在工具栏上,拖过来用就可以了

编译一下以后:

3、要在表格控件中,对模板列进行编辑好:

其中 的代码:

 HeaderItem item = this.boundGridView1.Headers.GetHeaderByLocation(0, 0);  //获取包括坐标(0,0)的单元格
            item.EndY = 2;  表示表头总高为2.即0、1、2三层表头

  this.boundGridView1.Headers.AddHeader(1, 2, 1, 1, "语文"); //增加表头,起始坐标(1,1) ,终止坐标(2,1) 内容"语文"
            this.boundGridView1.Headers.AddHeader(3, 4, 1, 1, "数学");  //增加表头,起始坐标(3,1) ,终止坐标(4,1) 内容"数学"

 this.boundGridView1.Headers.AddHeader(1, 8, 2, 2, "成绩");  //增加表头,起始坐标(1,2) ,终止坐标(8,2) 内容"成绩"
这些坐标1, 2, 1, 1,     和3, 4, 1, 1是你原来模板列中的坐标,所以,如果坐标的数值超过模板列的列数量,就会报错。

即:这个代码中,1, 8, 2, 2  说明表格中的模板列至少有8列,否则就会报错。

运行效果:

 

源码下载:

https://download.csdn.net/download/xjzdr/16382781

 

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
C# WinForms中,您可以根据用户的权限加载不同的控件。以下是一个简单的示例代码,演示如何根据用户权限加载不同的控件: ```csharp using System; using System.Windows.Forms; namespace YourNamespace { public partial class MainForm : Form { private string userRole; // 用户角色,可以根据实际情况进行更改 public MainForm(string role) { InitializeComponent(); userRole = role; } private void MainForm_Load(object sender, EventArgs e) { LoadControlsBasedOnUserRole(); } private void LoadControlsBasedOnUserRole() { switch (userRole) { case "Admin": // 加载管理员权限下的控件 LoadAdminControls(); break; case "User": // 加载普通用户权限下的控件 LoadUserControls(); break; default: // 加载默认权限下的控件 LoadDefaultControls(); break; } } private void LoadAdminControls() { // 加载管理员权限下的控件 Button adminButton = new Button(); adminButton.Text = "Admin Button"; // 添加到控件容器中 Controls.Add(adminButton); } private void LoadUserControls() { // 加载普通用户权限下的控件 Button userButton = new Button(); userButton.Text = "User Button"; // 添加到控件容器中 Controls.Add(userButton); } private void LoadDefaultControls() { // 加载默认权限下的控件 Button defaultButton = new Button(); defaultButton.Text = "Default Button"; // 添加到控件容器中 Controls.Add(defaultButton); } } } ``` 在上述示例中,我们在 `MainForm` 的构造函数中接收用户角色,并在 `MainForm_Load` 事件中调用 `LoadControlsBasedOnUserRole` 方法。根据用户的角色,我们分别调用 `LoadAdminControls`、`LoadUserControls` 或 `LoadDefaultControls` 方法来加载不同的控件。 请注意,这只是一个简化的示例,您需要根据实际的用户角色和控件进行适当的更改。您可以在不同的权限方法中创建和配置适合该角色的控件,并将其添加到 `Controls` 集合中以便在窗体上显示。 希望这可以帮助到您!如果您有任何其他问题,请随时问我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xjzdr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值