【发布时间】:2016-02-27 22:44:37
【问题描述】:
我现在尝试的是richTextBox1 mouseup 事件以及每个动作的事件:
private void richTextBox1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
ContextMenu contextMenu = new System.Windows.Forms.ContextMenu();
MenuItem menuItem = new MenuItem("Cut");
menuItem.Click += new EventHandler(CutAction);
contextMenu.MenuItems.Add(menuItem);
menuItem = new MenuItem("Copy");
menuItem.Click += new EventHandler(CopyAction);
contextMenu.MenuItems.Add(menuItem);
menuItem = new MenuItem("Paste");
menuItem.Click += new EventHandler(PasteAction);
contextMenu.MenuItems.Add(menuItem);
richTextBox1.ContextMenu = contextMenu;
}
}
void CutAction(object sender, EventArgs e)
{
richTextBox1.Cut();
}
void CopyAction(object sender, EventArgs e)
{
Clipboard.SetData(DataFormats.Rtf, richTextBox1.SelectedRtf);
Clipboard.Clear();
}
void PasteAction(object sender, EventArgs e)
{
if (Clipboard.ContainsText(TextDataFormat.Rtf))
{
richTextBox1.SelectedRtf
= Clipboard.GetData(DataFormats.Rtf).ToString();
}
}
有两个问题:
当我在 rcihTextbox 中标记文本并右键单击时,只有当我再次右键单击时,我才会看到菜单剪切复制粘贴。为什么第一次右键不显示菜单?
第二个问题,当我复制时点击复制,然后我转到 chrome 浏览器并尝试粘贴它是空的,粘贴是空的,就像它根本没有复制它一样。
我现在再次检查,只有 Cut 工作。如果我进行复制,它不会复制任何内容,并且我无法粘贴到顶部的 Chrome 地址栏中。或者,如果我从 chrome 的 exmaple 中复制了我搜索的内容:hello world,那么richTextBox 中的粘贴为空。
我希望能够从它自己的richTextBox 控件内部以及从其他外部程序(如记事本chrome ie 或什至其他richtextbox 控件)复制/剪切/粘贴。
【问题讨论】: