1

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.
        }
    }
}
4

3 に答える 3

2

(上で述べたように) 静的ではないことに加えて、実行しているものがアプリケーションの「メインスレッド」上にあることを確認する必要もあります。これはイベント (アプリからの「クリック イベント」の処理など) を処理するスレッドと同じであるため、そこからメソッドを呼び出す場合は問題ありませんが、そうでない場合は Invoke( ) または BeginInvoke() を Navigate() の周りで呼び出します。

于 2009-04-09T18:59:06.207 に答える
1

静的関数からインスタンスメンバーにアクセスすることはできません。関数宣言を次のように変更してください。

    public void MyFunct(){
            myWebBrowserControl.Navigate("http://www.google.com"); 
    }

于 2009-04-09T18:53:16.890 に答える
0

MyFunctを静的にしないようにします。

于 2009-04-09T18:53:15.563 に答える