Spread中使用键盘Ctrl+C,Ctrl+V进行操作时,会将单元格的格式也copy过去的解决方法

 

这是spread for winforms 的默认行为,如果你要修改默认行为,你可以按照以下步骤来实现:
1、设置 fpSpread1.AutoClipboard = false;
2、然后在Sprad的KeyDown事件中处理Ctrl+C,并调用fpSpread1.ActiveSheet.ClipboardCopy(FarPoint.Win.Spread.ClipboardCopyOptions.AsString)
3、在KeyDown中的Ctrl+V调用fpSpread1.ActiveSheet.ClipboardPaste()

我写好的例子:

        private void Form1_Load(object sender, EventArgs e)
        {
            fpSpread1.AutoClipboard = false;
        }

        private void fpSpread1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
        {
            if (e.KeyData == (Keys.Control | Keys.C))
            {
                fpSpread1.ActiveSheet.ClipboardCopy(FarPoint.Win.Spread.ClipboardCopyOptions.AsString);
            }
            else if (e.KeyData == (Keys.Control | Keys.V))
            {
                fpSpread1.ActiveSheet.ClipboardPaste();
            }
        }

  

特别说明:

      键盘的 Ctrl + C/V 无法直接实现只复制值操作,只能自定义Ctrl +C/V事件。

 

posted @ 2021-06-03 09:31  奥兰王子  阅读(379)  评论(0编辑  收藏  举报