如何从WebBrowser WPF控件中获取选定文本并将其绑定到字符串对象

本文关键字:文本 绑定 对象 字符串 WebBrowser WPF 控件 获取 | 更新日期: 2023-09-27 18:18:04

这是我的浏览器:

<WebBrowser viewmodel:BrowserBehavior.Html="{Binding SelectedNode.ContentData.FileName, Converter={StaticResource converter}, Mode=OneWay}" />

事实上,我的WebBrowser控件中的文本可以被选中。

我想知道我是否可以在字符串对象中检索选定的部分?

PS:当右击选中部分时,我注意到用户可以复制选中的文本。所以我的第二个问题是"我们能得到复制的文本吗?"我的意思是,复制的部分应该保存在某个环境变量中,我们可以在c#中得到它吗?

如何从WebBrowser WPF控件中获取选定文本并将其绑定到字符串对象

您不能从WebBrowser中绑定选定的文本,但您可以手动获取,如下所示:

var doc = webBrowser.Document as mshtml.HTMLDocument;
if (doc != null)
{
    var currentSelection = doc.selection;
    if (currentSelection != null)
    {
        var selectionRange = currentSelection.createRange();
        if (selectionRange != null)
        {
            var selectionText = selectionRange.Text;
            //do something with selected text
        }
    }
}

其中webBroswer是浏览器控件

<WebBrowser x:Name="webBroswer" ... />

,但你需要添加参考Microsoft.mshtml和回答你的第二个问题,你可以从剪贴板复制文本与Clipboard

var copiedText = Clipboard.GetText();