Spread 表格控件广泛应用于数据展示、录入及校验,在进行数据录入操作时,使用快捷键可以大大提高操作效率。Spread 提供了丰富的事件机制可以捕捉针对单元格的操作,其中 Change 即可以捕捉单元格数据改变。但是有用户反映该事件无法捕获 Ctrl + V 键盘操作,并且希望能够通过 Change事件统一处理数据操作。本文即将阐述如何在使 Change 事件捕获键盘操作。
下面分布阐述:
1.添加 Spread PreviewKeyDown 和 Change 事件:
private void Form1_Load(object sender, EventArgs e)
{
this.fpSpread1.Change += new FarPoint.Win.Spread.ChangeEventHandler(fpSpread1_Change);
this.fpSpread1.PreviewKeyDown += new PreviewKeyDownEventHandler(fpSpread1_PreviewKeyDown);
}
2.在 PreviewKeyDown 事件中判断快捷键:
if (e.Control&&e.KeyCode== Keys.V)
{
}
3.构造 Change 事件参数,调用 Change 事件:
int row=this.fpSpread1.ActiveSheet.ActiveRowIndex;
int col = this.fpSpread1.ActiveSheet.ActiveColumnIndex;
FarPoint.Win.Spread.ChangeEventArgs param=new ChangeEventArgs(null,row,col);
fpSpread1_Change(null, param);