我正在尝试向 C# 应用程序添加一些新功能,特别是尝试复制其某些行为,但在 Web 浏览器中,而不是像当前那样在应用程序中复制。
我正在尝试调用已在中定义的方法Browser.cs
从方法内部的类MainWindow.cs
class.
该方法定义在Browser.cs
with:
public partial class Browser : Form{
public Browser(){
...
}
public void Browser_Load(object sender, EventArgs e){
webKitBrowser1.Navigate("https://google.com");
}
...
}
然后我试图从MainWindow.cs
如下:
public partial class MainWindow : Window{
...
public MainWindow(){
...
Browser mBrowser = new Browser();
Object sender = new Object();
EventArgs e = new EventArgs();
mBrowser.Browser_Load(sender, e);
...
}
...
}
但是,我收到一个编译错误,内容如下:
无法在此作用域中声明名为“e”的本地或参数,因为该名称在封闭的本地作用域中用于定义本地或参数
这是什么意思?我以前从未遇到过这个错误 - 我在声明它的同一范围内使用该变量 - “封闭本地范围”是什么意思?那是因为我正在使用e
括号内为方法调用mBrowser.Browser_Load(sender, e)
?
当然,因为对此方法的调用与我定义的范围相同e
,这不应该是范围的问题吗?
我确实尝试使用以下命令执行呼叫:
mBrowser.Browser_Load(sender, EventArgs e);
但这给了我一个编译错误:
“EventArgs”是一种类型,在给定上下文中无效。
谁能指出我在这里做错了什么,以及我应该做什么才能正确调用这个方法?