richtext 插入文本后撤销问题 richtextbox1.text=richtextbox1.text.insert(start,"插入内容");这样子不能撤销,如果是richtextbox1.appendtext();可以撤销,为什么呢?怎么解决往文本中间插入文本并能撤销。我做的是记事本中的插入日期和时间 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不要直接插,用剪贴板中转,这样就可以UnDo/ReDo了:Clipboard.SetText(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));richTextBox1.Paste();//在当前光标所在位置插入Clipboard.Clear(); 请使用下面的方法插入文本:SelectionStart 为位置,SelectedText 为要插入的文本,SelectionLength 总是0 private void btInsert_Click(object sender, EventArgs e) { richTextBox1.SelectionStart = 1; richTextBox1.SelectionLength = 0; richTextBox1.SelectedText = "hahahaha"; } private void btUndo_Click(object sender, EventArgs e) { richTextBox1.Undo(); } 自带的Redo()和Undo()方法private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e) { this.contextMenuStrip2.SourceControl.Select(); RichTextBox rtb = (RichTextBox)this.contextMenuStrip2.SourceControl; rtb.Undo(); } 不能直接赋值,赋值不是操作,如果是用的richbox自带的撤销函数,那么赋值不是操作,不可以撤销。撤销函数针对的是复制,粘贴这样的“操作”过程。楼上的方法都可以解决,一般还是觉得用剪切板比较恰当。 多语言程序制作安装包时碰到的问题 新人,求救 EXCLE导出问题 .NET打印通知书 C# 文件下载的问题 父类和子类同时显示怎么搞? 如何向db2中存储blob类型数据 C# 预览Zip文件 多个表的数据更新问题(有可能是Bug) 有关int.ToString和decimal.Format的两个问题 关于c#中颜色的转换问题 关于DataReader读取数据时的疑惑
richTextBox1.Paste();//在当前光标所在位置插入
Clipboard.Clear();
SelectionStart 为位置,SelectedText 为要插入的文本,SelectionLength 总是0 private void btInsert_Click(object sender, EventArgs e)
{
richTextBox1.SelectionStart = 1;
richTextBox1.SelectionLength = 0;
richTextBox1.SelectedText = "hahahaha";
} private void btUndo_Click(object sender, EventArgs e)
{
richTextBox1.Undo();
}
private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.contextMenuStrip2.SourceControl.Select();
RichTextBox rtb = (RichTextBox)this.contextMenuStrip2.SourceControl;
rtb.Undo(); }