よくあるように、NewWindowイベントハンドラでキャプチャした.NET FrameworkのWebBroswerコントロールにポップアップがあります。Javascript Window.Opener .NET WebBrowserコントロールの新しいウィンドウのNull
WebBrowser w = new WebBrowser();
SHDocVw.WebBrowser_V1 web = (SHDocVw.WebBrowser_V1)w.ActiveXInstance;
web.NewWindow += new SHDocVw.DWebBrowserEvents_NewWindowEventHandler(web_NewWindow);
新しいポップアップは、WebBrowserコントロールの新しいインスタンスを持つ新しいフォームです。
void web_NewWindow(string URL, int Flags, string TargetFrameName, ref object PostData, string Headers, ref bool Processed)
{
Processed = true;
WebBrowser w2 = new WebBrowser();
Form PopUp = new Form();
PopUp.Controls.Clear();
PopUp.Controls.Add(w2);
w2.Dock = DockStyle.Fill;
PopUp.Show();
w2.Navigate(URL);
w2.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(w2_DocumentCompleted);
}
私の問題は、Window.Openerオブジェクトがプロセスでnullであることです。
ページでは、このフィールドを使用してユーザーを元のウィンドウに戻し、フォームの一部の値を入力します。
Window.OpenerオブジェクトをWebBrowserコントロールから次のWebBrowserコントロールに渡すことはできますか?これはうまくいかないと思うが、私は試してみなければならない。
おかげ
「そんな感じですか?コードを投稿するためのあなたのように見えます。投稿してください。 –
申し訳ありませんが、ちょうど私は気付かなかった – Proximo