如何从myFunct()中正确访问Web浏览器控件? Main.myWebBrowserControl& Main :: myWebBrowserControl不起作用。
namespace foo{
public partial class Main : Form{
public Main(){
InitializeComponent();
// Do some things...
MyFunct();
}
public static void MyFunct(){
myWebBrowserControl.Navigate("http://www.google.com"); // causing an error.
}
}
}
答案 0 :(得分:2)
除了不是静态的(如上所述),你还必须确保你正在执行的是在应用程序的“主线程”上。这是处理事件的相同线程(例如从应用程序处理“click事件”),所以如果你从那里调用方法,那么你很好,但如果没有,你必须包装一个Invoke( )或BeginInvoke()调用Navigate()。
答案 1 :(得分:1)
您无法从静态函数访问实例成员,将函数声明更改为
public void MyFunct(){
myWebBrowserControl.Navigate("http://www.google.com");
}
public void MyFunct(){
myWebBrowserControl.Navigate("http://www.google.com");
}
答案 2 :(得分:0)
让MyFunct不是静态的。