private static void OnMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { IInputElement inputElement = (IInputElement)sender; DependencyObject dependencyObject = (DependencyObject)sender; if (inputElement.IsMouseCaptured) { inputElement.ReleaseMouseCapture(); } if ((bool)dependencyObject.GetValue(Hyperlink.IsHyperlinkPressedProperty)) { dependencyObject.SetValue(Hyperlink.IsHyperlinkPressedProperty, false); if (inputElement.IsMouseOver) { if (e.UserInitiated) { Hyperlink.DoUserInitiatedNavigation(sender); } else { Hyperlink.DoNonUserInitiatedNavigation(sender); } } } e.Handled = true; }
private static void OnKeyDown(object sender, KeyEventArgs e) { if (!e.Handled && e.Key == Key.Return) { Hyperlink.CacheNavigateUri((DependencyObject)sender, null); if (e.UserInitiated) { Hyperlink.DoUserInitiatedNavigation(sender); } else { Hyperlink.DoNonUserInitiatedNavigation(sender); } e.Handled = true; } }