本帖最后由 mikewangwei 于 2021-6-3 14:13 编辑
通过代码实现的输入数据(非用户操作的数据),怎么撤销?
功能描述:
1. 画面上增加2个按钮分别为 【赋值】、【撤消】。
2. 点击【赋值】按钮,就是给第6行前3个单元格设置了数据(1,2,3)和背景色。
3. 此时点击【撤消】,spread没有反应(不能撤消用代码的赋值)。 我的代码是: fpSpread1.UndoManager.Undo();
注:如果在画面上输入数据,修改行高、列宽的时候,也就是用户的操作都是可以正确撤消的。
是否可以撤消(按钮输入的数据),请多指教!
以下是我的代码:
- using System;
- using System.Drawing;
- using System.Windows.Forms;
- namespace UndoTest
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- InitSheet(fpSpread1.Sheets[0]);
- }
- private void InitSheet(FarPoint.Win.Spread.SheetView sheet)
- {
- sheet.ColumnCount = 5;
- sheet.RowCount = 9;
- }
- private void button1_Click(object sender, EventArgs e)
- {
- fpSpread1.ActiveSheet.Cells[5, 0].Value = "1";
- fpSpread1.ActiveSheet.Cells[5, 1].Value = "2";
- fpSpread1.ActiveSheet.Cells[5, 1].BackColor = Color.Aqua;
- fpSpread1.ActiveSheet.Cells[5, 2].Value = "3";
- }
- private void button2_Click(object sender, EventArgs e)
- {
- fpSpread1.UndoManager.Undo();
- }
- }
- }
复制代码
|
-
点按钮【撤消】无反应
-
初始画面
|