从 C# 中的类调用函数

我正在使用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

    }

}


婷婷同学_
浏览 119回答 1
1回答

犯罪嫌疑人X

你不能close直接使用,但你可以使用一个小技巧,传递实例作为构造方法CallbackObjectForJsChromiumWebBrowser 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();     }}
打开App,查看更多内容
随时随地看视频慕课网APP