找回密码
 立即注册

QQ登录

只需一步,快速开始

adong613

论坛元老

6

主题

33

帖子

1万

积分

论坛元老

积分
14246

活字格认证

adong613
论坛元老   /  发表于:2012-8-23 17:35  /   查看:6053  /  回复:6
合拼单元格可以用AddSpanCell,像我把第一行的第一第二个单元格合并了,AddSpanCell(0,0,1,2)
合并之后,我想又恢复到原来的样子,即第一和第二个单元格又拆开了,
我看到ClearSpanCells,可我只是想合拼指定区域的,不是全部,请问怎么设置

6 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-8-23 18:11:00
沙发
可以使用下面的方法: fpSpread1.ActiveSheet.RemoveSpanCell(6,5);
回复 使用道具 举报
adong613
论坛元老   /  发表于:2012-8-24 17:39:00
板凳
fpSpread1.Sheets[0].DataAllowAddNew = true;
请问设置了这个属性,自动添加的行,会触发哪些事件?我想设置行里某些字面的默认值
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-8-24 18:25:00
地板
可以采用下面的方法来判断,是否有新行:
  1.     int rc = 0;
  2.     private void Form1_Load(object sender, EventArgs e)
  3.     {
  4.         DataTable dt = new DataTable();
  5.         dt.Columns.Add("Col_1");
  6.         dt.Columns.Add("Col_2");
  7.         dt.Columns.Add("Col_3");

  8.         dt.Rows.Add(1, 2, 3);
  9.         dt.Rows.Add(2, 2, 3);
  10.         dt.Rows.Add(3, 2, 3);
  11.         fpSpread1.ActiveSheet.DataSource = dt;
  12.         fpSpread1.ActiveSheet.DataAllowAddNew = true;
  13.         rc = fpSpread1.ActiveSheet.RowCount;
  14.     }

  15.     private void fpSpread1_EditModeOff(object sender, EventArgs e)
  16.     {
  17.         System.Diagnostics.Debug.WriteLine(fpSpread1.ActiveSheet.RowCount.ToString());
  18.         if (rc != fpSpread1.ActiveSheet.RowCount)
  19.         {
  20.             MessageBox.Show("新增行啦!");
  21.         }
  22.     }
复制代码
回复 使用道具 举报
adong613
论坛元老   /  发表于:2012-8-25 11:50:00
5#
谢谢了,按你的方法,上面的问题都解决了
回复 使用道具 举报
adong613
论坛元老   /  发表于:2012-8-25 11:56:00
6#
可我现在又遇到问题了,c\s,C#环境
我的文本单元格都是左上对齐方式,我想文本设置成左中,数据右中对齐,请问怎么设置啊

        NamedStyle fptcStyle = new NamedStyle("tcs");
            fptcStyle.HorizontalAlignment = CellHorizontalAlignment.Center;
            fptcStyle.VerticalAlignment = CellVerticalAlignment.Center;
            //fpSpread1.NamedStyles.Add(fptcStyle);
            fpSpread1.ActiveSheet.NamedStyles.Add(fptcStyle);
我这样整个sheet设置成居中怎么不对啊?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-8-27 14:46:00
7#
可以对不同的列指定不同的Style来实现对齐方式的控制:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {
  3.         NamedStyle fptcStyle = new NamedStyle("tcs");
  4.         fptcStyle.HorizontalAlignment = CellHorizontalAlignment.Left;
  5.         fptcStyle.VerticalAlignment = CellVerticalAlignment.Center;
  6.         fpSpread1.ActiveSheet.NamedStyles.Add(fptcStyle);

  7.         NamedStyle fpncStyle = new NamedStyle("ncs");
  8.         fpncStyle.HorizontalAlignment = CellHorizontalAlignment.Right;
  9.         fpncStyle.VerticalAlignment = CellVerticalAlignment.Center;
  10.         fpSpread1.ActiveSheet.NamedStyles.Add(fpncStyle);

  11.         fpSpread1.ActiveSheet.Columns[0].StyleName = "tcs";
  12.         fpSpread1.ActiveSheet.Columns[1].StyleName = "ncs";
  13.     }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部