#silverlight #tabs #window
#silverlight #вкладки #окно
Вопрос:
Я пытаюсь открыть новое окно или вкладку из моего приложения Silverlight. Как я могу принудительно указать целевой тип (window / tab)? Прямо сейчас при вызове используются настройки браузера по умолчанию:
HtmlPage.Window.Navigate(new Uri("http://www.google.com"), "_blank");
Для этого я использую контекстное меню, и я хотел бы получить те же результаты, что и в обычном браузере, «Открыть на новой вкладке» и «Открыть в новом окне».
Спасибо
Ответ №1:
Прочитайте следующую статью о HtmlPage.PopupWindow()
:
Как вызвать всплывающее окно браузера
Также это blank
не _blank
при использовании Navigate
.
В качестве альтернативы вы всегда можете вызвать функцию javascript из Silverlight. Создайте функцию, которая принимает параметр URL в javascript, а затем просто вызовите ее из Silverlight, например:
HtmlPage.Window.Invoke("OpenMyNewWindow", new string[] { "http://www.google.com" });
Функция Javascript:
function OpenMyNewWindow(url)
{
window.open(url, "nameOfWindow");
}
Это самый громоздкий способ, но он обладает большой гибкостью для выполнения других задач и, возможно, получения правильного представления о вкладке / окне. Что касается указания вкладки или окна, я не думаю, что вы можете, поскольку это зависит от браузера и может отличаться в зависимости от того, какой браузер вы используете.
Комментарии:
1. ссылка на блог Microsoft перенаправляет на загрузку Silverlight