找回密码
 立即注册

QQ登录

只需一步,快速开始

lh8350

论坛元老

33

主题

80

帖子

2万

积分

论坛元老

积分
23275

活字格认证

lh8350
论坛元老   /  发表于:2012-7-24 17:24  /   查看:4649  /  回复:3
pic1.jpg (20.19 KB, 下载次数: 196)

3 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-24 18:15:00
沙发
如果将列头设置成两行是否能够满足你的需求,设置两行列头,绑定数据源,并用代码设置一行显示成A/B/C...,比如使用下面的代码:
  1.             DataTable dt = new DataTable();
  2.             dt.Columns.Add("Col1");
  3.             dt.Columns.Add("Col2");
  4.             dt.Columns.Add("Col3");

  5.             dt.Rows.Add(1, 2, 3);
  6.             dt.Rows.Add(11, 2, 3);
  7.             dt.Rows.Add(12, 2, 3);
  8.             dt.Rows.Add(13, 2, 3);
  9.             dt.Rows.Add(14, 2, 3);
  10.             fpSpread1.Sheets[0].DataSource = dt;
  11.             fpSpread1.Sheets[0].ColumnHeader.RowCount = 2;
  12.             fpSpread1.Sheets[0].ColumnHeader.AutoTextIndex = 0;
  13.             fpSpread1.Sheets[0].Columns[0].AllowAutoFilter = true;

  14.             for (int i = 0; i < fpSpread1.Sheets[0].ColumnHeader.Columns.Count; i++)
  15.             {
  16.                 fpSpread1.Sheets[0].ColumnHeader.Cells[1, i].Text = ((char)(65 + i)).ToString();
  17.             }
复制代码
回复 使用道具 举报
lh8350
论坛元老   /  发表于:2012-7-25 09:36:00
板凳
如果把默认的列头放在第一行,我设置了隐藏第一行列头,但是在取列头label的时候,取的不是默认的A,B,C的列头,要怎样设置才能取到默认的列头呢,取默认的列头方便后面写公式。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-25 11:26:00
地板
如果你通过设置fpSpread1.Sheets[0].DataSource = dt;方式绑定数据源,那么,默认的列头就是dt中各列的名字,不再是A/B/C...,通过fpSpread1.ActiveSheet.Columns[0].Label得到的就不再是A
如果想取到列头中第一行单元格的内容,可以通过fpSpread1.ActiveSheet.ColumnHeader.Cells[0, i].Text来实现。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部