如何剪切,复制和粘贴格式?

时间:2013-04-10 03:25:46

标签: c# winforms visual-studio formatting

我有一个带有richTextBox的WinForms应用程序。我希望能够在我的应用程序中剪切,复制和粘贴格式化文本。目前,我的代码包括:

全部切割:

richTextBoxPrintCtrl1.Cut();

Cut Selected:

Clipboard.SetText(richTextBoxPrintCtrl1.Text);
        richTextBoxPrintCtrl1.Text = "";

全部复制:

richTextBoxPrintCtrl1.Copy();

复制所选:

Clipboard.SetDataObject(richTextBoxPrintCtrl1.SelectedText);

粘贴:

DataFormats.Format myFormat = DataFormats.GetFormat(DataFormats.Text);
        richTextBoxPrintCtrl1.Paste(myFormat);

我希望如此,如果我从richTextBox剪切/复制文本,它会保留所有格式(大小,字体,颜色等),如果我将文本粘贴到richTextBox,它也会保留所有格式。

如何实现这一目标?

感谢。

1 个答案:

答案 0 :(得分:6)

尝试这两个功能:

复制

    private void Copy()
    {
        Clipboard.SetText(richTextBox1.Rtf, TextDataFormat.Rtf);
    }

<强>粘贴

    private void Paste()
    {
        if (Clipboard.ContainsText(TextDataFormat.Rtf))
        {
            richTextBox1.Rtf = Clipboard.GetText(TextDataFormat.Rtf);

        }
    }