private static void UpdateStatusBar(object sender) { IInputElement inputElement = (IInputElement)sender; DependencyObject dependencyObject = (DependencyObject)sender; Uri targetUri = (Uri)dependencyObject.GetValue(Hyperlink.GetNavigateUriProperty(inputElement)); Hyperlink.s_criticalNavigateUriProtectee.Value = new int?(dependencyObject.GetHashCode()); Hyperlink.CacheNavigateUri(dependencyObject, targetUri); RequestSetStatusBarEventArgs e = new RequestSetStatusBarEventArgs(targetUri); inputElement.RaiseEvent(e); }
/// <summary> /// Updates the status bar to reflect the current NavigateUri. /// </summary> private static void UpdateStatusBar(object sender) { IInputElement element = (IInputElement)sender; DependencyObject dObject = (DependencyObject)sender; Uri targetUri = (Uri)dObject.GetValue(GetNavigateUriProperty(element)); // // Keep the identification code for the element that's to be protected against spoofing // attacks because its URI is shown on the status bar. // s_criticalNavigateUriProtectee.Value = dObject.GetHashCode(); // // Cache URI for spoofing countermeasures. // CacheNavigateUri(dObject, targetUri); RequestSetStatusBarEventArgs args = new RequestSetStatusBarEventArgs(targetUri); element.RaiseEvent(args); }