use*_*581 5 c# chromium-embedded cefsharp
我正在使用CefSharp for Windows Forms,我遇到了实现鼠标返回(XButton1)和鼠标转发(XButton2)事件以浏览浏览历史记录的问题.
我尝试了以下代码,但似乎没有触发MouseClick事件:
using System;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace CefSharp.WinForms.Example
{
public partial class BrowserForm : Form
{
private readonly ChromiumWebBrowser browser;
public BrowserForm()
{
InitializeComponent();
Text = "CefSharp";
WindowState = FormWindowState.Maximized;
browser = new ChromiumWebBrowser("http://www.google.com")
{
Dock = DockStyle.Fill,
};
browser.MenuHandler = new MenuHandler();
browser.MouseClick += (sender, args) =>
{
MessageBox.Show("Button pressed: " + args.Button.ToString());
if (args.Button.Equals(MouseButtons.XButton1))
{
if (browser.CanGoBack)
{
browser.Back();
}
}
else if (args.Button.Equals(MouseButtons.XButton2))
{
if (browser.CanGoForward)
{
browser.Forward();
}
}
};
toolStripContainer.ContentPanel.Controls.Add(browser);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我知道这是一个老问题,但我通过谷歌偶然发现了它,所以认为值得提供一个答案。如果你实现了,IContextMenuHandler你就可以控制ContextMenu. 下面的两个链接演示了所需的内容(以及一些其他有用的功能)。
| 归档时间: |
|
| 查看次数: |
6654 次 |
| 最近记录: |