如何从文本框中剪切文本并复制到剪贴板?

时间:2014-11-20 03:57:07

标签: c# clipboard

首先让我说我是一名初学程序员,我知道我的最后一个代码声明是不正确的。我正在写一个记事本应用程序,我无法弄清楚如何剪切文本。我知道当你剪切文本时,你所做的就是将所选文本复制到剪贴板,然后删除所选文本。正如我所说,我知道语法错误,我只是想表明我正在尝试做什么。

private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Text = Clipboard.GetText(); // will paste whatever text is copied to clipboard
        }
        private void copyToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Clipboard.SetText(textBox1.SelectedText);//copies whatever text is selected in my textbox
        }
        private void clearClipboardToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Clipboard.Clear();//clears clipboard
        }
        private void cutToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Clipboard.SetText(textBox1.SelectedText);
            textBox1.SelectedText == "";//line I know is incorrect
        }

2 个答案:

答案 0 :(得分:2)

执行此操作的最佳方法是将操作委派给TextBox

  

Cut
  Copy
  Paste

也就是说,如果您想手动执行此操作,则代码行的问题在于您使用==运算符而不是=运算符。您编写的代码将使用正确的运算符。 :)

请注意,textBox1.SelectedText = Clipboard.GetText();将是更典型的“粘贴”实现。替换整个文本框的文本没有任何问题,如果这真的是你的意思,但它可能会让一些用户感到惊讶。

答案 1 :(得分:0)

TextBox有自己的CutCopyPaste方法。这正是您应该首先阅读文档的原因。毫不奇怪,TextBox类的文档列出了这些方法。