找回密码
 立即注册

QQ登录

只需一步,快速开始

lh8350

论坛元老

33

主题

80

帖子

2万

积分

论坛元老

积分
23275

活字格认证

lh8350
论坛元老   /  发表于:2012-7-11 10:23  /   查看:7122  /  回复:5
求助,spread控件可不可以实现删除多个选中单元格的内容?就是像execel一样,选中多个单元格,然后按del键,选中单元格中的内容全部清除。急等!!

5 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-11 11:00:00
沙发
回复 1楼lh8350的帖子

在Spread for WinForms 6.0中可以使用下面的代码来实现这一功能:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {
  3.         FarPoint.Win.Spread.InputMap im = new FarPoint.Win.Spread.InputMap();

  4.         im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused);
  5.         im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Delete, Keys.None), FarPoint.Win.Spread.SpreadActions.ClearSelectedCells);

  6.         im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
  7.         im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Delete, Keys.None), FarPoint.Win.Spread.SpreadActions.ClearSelectedCells);
  8.     }
复制代码
回复 使用道具 举报
lh8350
论坛元老   /  发表于:2012-7-11 13:18:00
板凳
哈哈,太感谢了!我的是5.0应该也可以的吧。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-11 14:11:00
地板
Spread for WinForms 5.0也可以使用上面的代码。
回复 使用道具 举报
lh8350
论坛元老   /  发表于:2012-7-17 15:05:00
5#
dof,我发现问题了,上面的方法实现后,原来设置为只读的那些列的都可以修改了,怎么能保持那些只读的不可修改呢?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-17 16:24:00
6#
回复 5楼lh8350的帖子

请问你是通过什么方式设置的只读呢,能将代码发来看一看吗

我通过Locked = true,然后调用上面的代码并没有出现该情况,我的代码如下:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {

  3.         fpSpread1.ActiveSheet.Cells[0, 0].Locked = true;
  4.         fpSpread1.ActiveSheet.Cells[0, 0].Value = 1;
  5.         fpSpread1.ActiveSheet.Cells[1, 0].Locked = true;
  6.         fpSpread1.ActiveSheet.Cells[1, 0].Value = 2;

  7.         FarPoint.Win.Spread.InputMap im = new FarPoint.Win.Spread.InputMap();

  8.         im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused);
  9.         im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Delete, Keys.None), FarPoint.Win.Spread.SpreadActions.ClearSelectedCells);

  10.         im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
  11.         im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Delete, Keys.None), FarPoint.Win.Spread.SpreadActions.ClearSelectedCells);
  12.     }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部