【发布时间】:2010-11-06 06:52:14
【问题描述】:
嗯,我在 .NET Framework 的 WebBroswer 控件中有一个弹出窗口,我使用 NewWindow 事件处理程序捕获它,就像这样。
WebBrowser w = new WebBrowser();
SHDocVw.WebBrowser_V1 web = (SHDocVw.WebBrowser_V1)w.ActiveXInstance;
web.NewWindow += new SHDocVw.DWebBrowserEvents_NewWindowEventHandler(web_NewWindow);
新的 Popup 采用新形式,带有 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 对象在进程中为空。
页面使用该字段将用户返回到原始窗口并在表单上填写一些值。
是否可以将 Window.Opener 对象从一个 WebBrowser 控件传递到下一个控件?这似乎不可能,但我必须尝试。
谢谢
【问题讨论】:
-
“像这样”?看起来你必须发布代码。请张贴。
-
好吧,刚才我没注意到
标签: .net javascript webforms webbrowser-control window.opener