找回密码
 立即注册

QQ登录

只需一步,快速开始

dc22wt

论坛元老

21

主题

95

帖子

9445

积分

论坛元老

积分
9445

活字格认证

dc22wt
论坛元老   /  发表于:2012-10-18 09:46  /   查看:6336  /  回复:7
QQ截图20121018094326.png 能不能从第二列开始进行行选择,或者从第一列开始进行行选择,第一列可以单击选中

7 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-10-18 10:41:00
沙发
回复 1楼dc22wt的帖子

我理解你的意思是:
1.如果点击第一列单元格,就单选。
2.如果非第一列,那么就选中整行。
那么实现代码如下:

  1.         private void fpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
  2.         {
  3.             if (e.Column != 0)
  4.             {
  5.                 //this.fpSpread1.Sheets[0].SelectionPolicy = FarPoint.Win.Spread.Model.SelectionPolicy.Range;
  6.                 this.fpSpread1.Sheets[0].SelectionUnit = FarPoint.Win.Spread.Model.SelectionUnit.Row;
  7.             }
  8.             else
  9.             {
  10.                 this.fpSpread1.Sheets[0].SelectionUnit = FarPoint.Win.Spread.Model.SelectionUnit.Cell;
  11.             }
  12.         }

复制代码
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-10-18 10:42:00
板凳
FPSPREAD 有没有checkbox 的选中事件
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-10-18 16:08:00
地板
回复 3楼dc22wt的帖子

测试代码:

  1.    private void Form1_Load(object sender, EventArgs e)
  2.         {
  3.             FarPoint.Win.Spread.CellType.CheckBoxCellType ck = new FarPoint.Win.Spread.CellType.CheckBoxCellType();
  4.             ck.EditorValueChanged += new EventHandler(ck_EditorValueChanged);
  5.             this.fpSpread1.Sheets[0].Columns[0].CellType = ck;
  6.         }

  7.         void ck_EditorValueChanged(object sender, EventArgs e)
  8.         {
  9.         }
复制代码
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-10-19 11:26:00
5#
请问下,新生成的这个事件,我怎么判断checkbox的这个是否选中状态,还有怎么判断我勾选的是那一行的,是不是要加点参数进去,谢谢!
回复 使用道具 举报
wangleiecho
中级会员   /  发表于:2012-10-19 13:18:00
6#
楼上的 判断的方法可以写在 void ck_EditorValueChanged(object sender, EventArgs e)
        {
              e.row是你勾选的行
//             判断是否选中 应该是
if((bool)this.fpSpread1.Sheets[0].cells[e.row,0].value)
        {
         }
        }
中啊,
回复 使用道具 举报
dc22wt
论坛元老   /  发表于:2012-10-19 14:50:00
7#
不行,FarPoint.Win.Spread.CellClickEventArgs e 要重构事件里的参数是这样的,才能使用e.row
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-10-19 16:40:00
8#
回复 7楼dc22wt的帖子

你可以通过,
1.ActiveCell 的值来判断是否选中。
2.ActiveRow 来获取行索引。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部