我正在使用CefSharp图形界面,我想在用户按下“关闭”按钮时关闭窗口。现在我必须close();从exit();类内部的函数调用该函数CallbackObjectForJs。我该怎么做?ChromiumWebBrowser browser;public void close(){ this.Close();}private void form2_Load(object sender, EventArgs e){ browser = new ChromiumWebBrowser("www.myurl.com"); browser.RegisterJsObject("csalert", new CallbackObjectForJs()); this.Controls.Add(browser);}public class CallbackObjectForJs{ public void alert(string msg){ MessageBox.Show(msg); } public void exit() { close(); //that not works }}
1 回答

犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
你不能close直接使用,但你可以使用一个小技巧,传递实例作为构造方法CallbackObjectForJs
ChromiumWebBrowser browser;
public void close()
{
this.Close();
}
private void form2_Load(object sender, EventArgs e)
{
browser = new ChromiumWebBrowser("www.myurl.com");
browser.RegisterJsObject("csalert", new CallbackObjectForJs(this));
this.Controls.Add(browser);
}
public class CallbackObjectForJs{
Form _form;
public CallbackObjectForJs(Form form){
_form = form;
}
public void alert(string msg){
MessageBox.Show(msg);
}
public void exit() {
_form.close();
}
}
- 1 回答
- 0 关注
- 118 浏览
添加回答
举报
0/150
提交
取消