我正在测试DotNetBrowser,但找不到模拟鼠标移动和单击的方法。是否可以不使用JavaScript而只使用组件的方法?
它必须在页面中的Flash元素上工作。因此,通过JavaScript进行模拟点击和移动并没有帮助。
或者可能有一种方法可以模拟点击WPF控件?
根据文档,模拟点击应该很简单。
using DotNetBrowser;
using DotNetBrowser.DOM;
using DotNetBrowser.Events;
...
Browser browser = BrowserFactory.Create();
browser.FinishLoadingFrameEvent += delegate(object sender, FinishLoadingEventArgs e)
{
if (e.IsMainFrame)
{
Browser browser = e.Browser;
DOMDocument document = browser.GetDocument();
DOMElement link = document.GetElementById("button");
if (link != null)
{
link.Click();
}
}
};
browser.LoadHTML("<html><body><button id='button' " +
"onclick="alert('Button has been clicked!');">Click Me!</button>" +
"</body></html>");
当前WPF不支持模拟鼠标在某个位置的移动/点击。DotNetBrowser也没有API来移动鼠标。
相反,您可以使用非托管函数。以下文章提供了您需要的代码示例:https://stackoverflow.com/a/8273118/6560605
更新
我们发布了支持模拟鼠标事件的DotNetBrowser 1.8。您可以在下一个链接中看到一些示例:模拟鼠标输入。