【问题标题】:I want to select all and copy it to clipboard我想全选并将其复制到剪贴板
【发布时间】:2012-07-09 11:09:10
【问题描述】:

我有一个显示文本的 Web 浏览器。 如果我将它复制到clipbaord,它会将所有的html标签复制到并且我不想要那个。

我希望能够全选然后复制到剪贴板。

我想将文本及其格式复制到剪贴板。

当我突出显示我自己的文本并在粘贴时单击复制时,这正是我想要的完美。

但是当我使用此代码仅复制文档文本时,我得到了 Html 标记。

这是我复制到剪贴板的方式:

void CopyCellText()
{
Clipboard.Clear();
if (webBrowser1 != null)
{
Clipboard.SetText(webBrowser1.DocumentText.ToString().Trim());
}
}

【问题讨论】:

  • HTML 文本的格式由它的标签控制

标签: c#


【解决方案1】:

全选并复制到剪贴板:

webBrowser1.Document.ExecCommand("SelectAll", true, null);
webBrowser1.Document.ExecCommand("Copy", true, null);

您不会看到 html 标签,但有所有格式。

【讨论】:

  • 这更像是一种 hack,可以停止使用,如果您想保留所有格式,可以使用 XHTML to RTF 之类的工具
【解决方案2】:

您的意思是将您的 html 代码转换为文本并复制到剪贴板?您将需要HTML Agility Pack。查看this page 以获得简单指南。

【讨论】:

    【解决方案3】:

    【讨论】:

    • Regex 和 Html do not match very well,加上 OP 想要继续格式化!
    • 不知道,因为我从来没有这样用过!谢谢!
    • 这很好,但我想保留 html 格式,我的突出显示和下划线和划掉,我如何全选?
    • 这并不像我想象的那么容易,但我发现了这个:blogs.msdn.com/b/jmstall/archive/2007/01/21/…
    【解决方案4】:

    我认为您获得 HTML 标记的原因是 webBrowser1.DocumentText 将获取 HTML 文档本身的全部内容,其中包括所有生成的 HTML。

    快速搜索给了我以下信息:

    Retrieving Selected Text from Webbrowser control in .net(C#)

    Get all text from WebBrowser control

    【讨论】:

      猜你喜欢
      • 2019-10-19
      • 2011-01-03
      • 2017-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-30
      • 1970-01-01
      相关资源
      最近更新 更多