Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WebBrowser文本选择更改时触发事件_C#_.net_Winforms_Webbrowser Control_Textselection - Fatal编程技术网

C# WebBrowser文本选择更改时触发事件

C# WebBrowser文本选择更改时触发事件,c#,.net,winforms,webbrowser-control,textselection,C#,.net,Winforms,Webbrowser Control,Textselection,我的程序的两个部分是winformsWebBrowser和一个简单的TextBox 我现在想要的是,当我在WebBrowser中选择一个文本时,它会自动复制文本框中所选的文本 我在谷歌上找不到关于这个的任何信息,所以如果有人能帮助我,我会很高兴的 您可以尝试此操作,但这需要一个触发器示例—单击按钮,以便在TextBox1上传递值。不幸的是,WebBrowser控件不支持鼠标事件 dynamic document = webBrowser1.Document.DomDocument; dyna

我的程序的两个部分是winforms
WebBrowser
和一个简单的
TextBox

我现在想要的是,当我在
WebBrowser
中选择一个文本时,它会自动复制
文本框中所选的文本


我在谷歌上找不到关于这个的任何信息,所以如果有人能帮助我,我会很高兴的

您可以尝试此操作,但这需要一个触发器示例—单击按钮,以便在TextBox1上传递值。不幸的是,WebBrowser控件不支持鼠标事件

 dynamic document = webBrowser1.Document.DomDocument;
 dynamic selection = document.selection;
 dynamic text = selection.createRange().text;
 TextBox1.Text = text;

您可以使用document方法将事件处理程序附加到
WebBrowser
控件的事件。然后,可以使用的属性获取选定的文本

示例

void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
{
    webBrowser1.Document.AttachEventHandler("onselectionchange", selectionchange);
}
private void selectionchange(object sender, EventArgs e) 
{
    dynamic document = webBrowser1.Document.DomDocument;
    dynamic selection = document.selection;
    dynamic text = selection.createRange().text;
    this.textBox1.Text= (string)text;
}

我已经在其他帖子上读过了,但是我怎么知道什么时候会被选中呢?我不能只运行这个方法而不得到一个信息,即不幸的是WebBrowser control@Martiniederli know不支持selection changedMouse事件,这就是我问这个问题的原因,因为有一种方法可以做到这一点:D