【问题标题】:How to copy richtextbox content with link?如何复制带有链接的richtextbox内容?
【发布时间】:2019-10-03 17:28:47
【问题描述】:

我想复制 Richtextbox 内容并保持格式相同和超链接。但它被复制为没有超链接的纯文本。我在富文本框中使用链接标签。

private void Bttn_copy_Click(object sender, EventArgs e)
    {
        richtxtbx_email.SelectAll();

        Clipboard.Clear();
        Clipboard.SetText(richtxtbx_email.SelectedRtf, TextDataFormat.Rtf);
    }

并尝试这样做:

DataObject dto = new DataObject();
dto.SetText(mesrtf, TextDataFormat.Rtf);
dto.SetText(mes, TextDataFormat.UnicodeText);
Clipboard.Clear();
Clipboard.SetDataObject(dto);

你能帮我解决这个问题吗?

【问题讨论】:

    标签: c# winforms hyperlink richtextbox linklabel


    【解决方案1】:

    超链接只是在编辑器中使用超文本链接的一种方式,它能够呈现它们。

    从文本框中复制文本时,只能复制明文本身。

    注意 RichTextBox.SelectedRtf 是字符串类型的属性。

    【讨论】:

      【解决方案2】:

      RichTextBox 不像 HTML 那样包含超链接。

      它只检测某个文本是否看起来像一个链接,并自动将其着色为蓝色,添加下划线并检测用户是否点击它。

      如果 RichTextBox.DetectUrls Property 设置为 true,它会这样做。

      如果您将数据复制到一个新的 RichTextBox 并且没有看到在另一个 RichTextBox 中检测到的链接,那么您只需在复制文本之前将此属性设置为 true。

      另一方面,如果您需要真正的链接,以便文本是一回事,链接是另一回事,请查看here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-18
        • 2019-11-27
        • 1970-01-01
        • 2017-02-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多