C # Как я могу вставить форматированный текст из буфера обмена в RichTextBox - PullRequest
4 голосов
/ 17 марта 2012

Я добавил контекстное меню в richboxtext только с одной функцией «вставить». Какой код вставит содержимое моего буфера обмена (например, скопировано из Microsoft Word) в форму richboxtext? Я пробовал с:

    private void PasteToolStripMenuItem_Click_1(object sender, EventArgs e)
    {
        richTextBox1.Text = Clipboard.GetText();
    }

но вставляет неформатированный текст. Как я могу вставить текст с форматированием?

Ответы [ 3 ]

5 голосов
/ 17 марта 2012

Понял!

Просто укажите формат:

richTextBox1.Text = Clipboard.GetText(TextDataFormat.Rtf);

ОБНОВЛЕНИЕ

Это поможет вам получить форматированный текст (только текст) из MS Word

5 голосов
/ 17 марта 2012
DataFormats.Format myFormat = DataFormats.GetFormat(DataFormats.Html);

if(richTextBox1.CanPaste(myFormat))
{
    richTextBox1.Paste(myFormat);
    return true;
}

Вы должны изменить Dataformats.Html того типа, который должен разрешать ваш Richtextbox.

Вот список форматов данных: http://msdn.microsoft.com/en-us/library/system.windows.forms.dataformats.aspx

0 голосов
/ 17 марта 2012

Попробуйте:

richTextBox1.selectedRtf=Clipboard.GetData(DataFormats.Rtf).ToString();
...