我正在使用CefSharp圖形界面,我想在用戶按下“關閉”按鈕時關閉窗口?,F在我必須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 關注
- 135 瀏覽
添加回答
舉報
0/150
提交
取消