Предполагается, что ваш WebBrowser
XAML выглядит примерно так:
<phone:WebBrowser Name="browser_Post" Navigating="OnBrowserPostNavigating">
Ваш обработчик событий будет выглядеть так:
private void OnBrowserPostNavigating(object sender, NavigatingEventArgs e)
{
// meaning the link is external, we want to open this outside of our app
if (!e.Uri.AbsoluteUri.Contains("m.google.com/app/plus"))
{
e.Cancel = true;
WebBrowserTask task = new WebBrowserTask();
task.URL = e.Uri.AbsoluteUri;
task.Show();
}
}
e.Uri.AbsoluteUri
будет абсолютным URI кликаемой ссылки, т. Е. http://www.google.com. String.Contains()
- это упрощенный способ проверки домена пользователя, но его должно быть достаточно.
WebBrowserTask
откроет IE, используя внешний URL, а все другие ссылки, локальные для Google+, останутся в пределах вашего локального WebBrowser
.
Редактировать
Здесь на самом деле почти идентичный вопрос:
хочу открыть ссылку во внешнем браузере WP7