В моем телефоне приложении Windows, я использую RichTextBox элементОтменить открытие ссылки в браузере
У меня есть гиперссылка на него, и когда пользователь нажимает на нее есть диалог: Вы хотите, чтобы открыть эту ссылку в exteranl браузера. Если пользователь скажет «нет», внешний браузер не должен открываться. Я отменяю навигацию, но в любом случае - открывается внешний браузер. Как отменить открытие ссылки в браузере?
//Constructor
static Helper()
{
var phoneApplicationFrame = Application.Current.RootVisual as PhoneApplicationFrame;
if (Application.Current.RootVisual as PhoneApplicationFrame != null)
{
phoneApplicationFrame.Navigating += new NavigatingCancelEventHandler(NavigationService_Navigating);
}
}
link.Foreground = new SolidColorBrush(Colors.Blue);
link.MouseOverForeground = new SolidColorBrush(Colors.Blue);
link.TargetName = "_blank";
var linkText = new Run() { Text = linkDesc };
link.Inlines.Add(linkText);
link.Click += new RoutedEventHandler(NavidateTo);
private static void NavidateTo(object sender, RoutedEventArgs routedEventArgs)
{
if (MessageBox.Show(
Constants.BrowserNavigating,
"",
MessageBoxButton.OKCancel) == MessageBoxResult.Cancel)
{
StateManager.Set("ExternalBrowser", "true");
}
else
{
StateManager.Set("Browser", "true");
}
}
public static void NavigationService_Navigating(object sender, NavigatingCancelEventArgs e)
{
var res = StateManager.Get("ExternalBrowser");
if (res != null)
{
StateManager.Remove("ExternalBrowser");
e.Cancel = true;
}
}
Мы не можем сказать вам, что случилось с вашим кодом, если вы не указали нам свой код. – RhysW
Возможный дубликат [Как отменить навигацию в RichTextBox] (http://stackoverflow.com/questions/10547834/how-cancel-navigation -в-RichTextBox) – CharlesB