【发布时间】:2017-07-24 11:52:13
【问题描述】:
我的程序的两个部分是一个winforms WebBrowser 和一个简单的TextBox。
我现在想要的是,当我在WebBrowser 中选择一个文本时,它会自动复制TextBox 中的选定文本。
我在 google 上找不到任何关于此的信息,所以如果有人可以帮助我,我会很高兴!
【问题讨论】:
标签: c# .net winforms webbrowser-control textselection
我的程序的两个部分是一个winforms WebBrowser 和一个简单的TextBox。
我现在想要的是,当我在WebBrowser 中选择一个文本时,它会自动复制TextBox 中的选定文本。
我在 google 上找不到任何关于此的信息,所以如果有人可以帮助我,我会很高兴!
【问题讨论】:
标签: c# .net winforms webbrowser-control textselection
您可以使用文档的AttachEventHandler 方法将事件处理程序附加到WebBrowser 控件的Document 的onselectionchange 事件。然后您可以使用DomDocument 的属性来获取选定的文本。
示例
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;
}
【讨论】:
您可以试试这个,但这需要一个触发器示例,即单击按钮以将值传递到您的 TextBox1。很遗憾,WebBrowser 控件不支持鼠标事件。
dynamic document = webBrowser1.Document.DomDocument;
dynamic selection = document.selection;
dynamic text = selection.createRange().text;
TextBox1.Text = text;
【讨论】: