2010-04-29 1 views
1

Я использую управление WebBrowser WPF и обработку событий NewWindow3, используя следующий код:Javascript изменения размеров с помощью window.open и WebBrowser управления

IServiceProvider serviceProvider = (IServiceProvider)webBrowser.Document; 
Guid serviceGuid = SID_SWebBrowserApp; 
Guid iid = typeof(SHDocVw.WebBrowser).GUID; 
SHDocVw.WebBrowser wb = (SHDocVw.WebBrowser)serviceProvider.QueryService(ref serviceGuid, ref iid); 
wb.NewWindow3 += new SHDocVw.DWebBrowserEvents2_NewWindow3EventHandler(wb_NewWindow3); 

Как обрабатывать яваскрипт изменения размеров при навигации с помощью window.open, что-то вроде этого:

window.open('Sample.htm',null,'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no'); 

Есть ли способ получить высоту и ширину, запрашиваемые вызывающим абонентом в обработчике событий NewWindow3?

ответ

1

Нет, но вы можете сохранить значения в своей реализации INewWindowManager::EvaluateNewWindow и использовать значения позже. Пример можно найти на странице http://code.google.com/p/csexwb2/source/browse/trunk/cEXWB.cs

+0

Не могли бы вы объяснить, пожалуйста. Я не использую C++ – Raj

+0

IE API - это COM, который не зависит от языка. Вы можете использовать любой COM-язык для вызова API IE. По значению API, обратитесь к документации IE SDK. –