Próbuję użyć przycisku hiperłącza jako mailto w Silverlight 4 tak:email hyperlinkbutton
<HyperlinkButton x:Name="hlbCustomerSupport" NavigateUri="mailto:[email protected]" Content="[email protected]"></HyperlinkButton>
i po kliknięciu go w aplikacji pojawia się:
szczegóły błędu internetowa
User agent: Mozilla/4.0 (compatible; MSIE 8.0 ; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.307 29; Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E) Datownik: Wed, 19 stycznia 2011 14:24:29 UTC
Wiadomość: Unhandled Błąd w kodzie aplikacji Silverlight : 4004
Kategoria: ManagedRuntimeError
Wiadomość: System.ArgumentException: Content dla identyfikatora URI nie można załadować. Identyfikator URI może być nieprawidłowy. Parametr nazwa: URI w URI ( System.Windows.Navigation.NavigationService.NavigateCore URI trybie NavigationMode, logiczną suppressJournalAdd, logiczna isRedirect) w System.Windows.Controls.Frame.Navigate (URI źródła) w MS.Internal.NavigationHelper.TryInternalNavigate() w MS.Internal.NavigationHelper.Navigate (logiczna checkUserInitiatedAction) w System.Windows.Controls.HyperlinkButton.OnClick() w System.Windows.Controls.Primitives.ButtonBase. OnMouseLeftButtonUp (MouseButtonEventArgs e) at System.Windows.Controls.Control.OnMouseLeftButtonUp (Control ctrl, EventArgs e) w MS.Internal.JoltHelper.FireEvent (IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, String EventName)
zrobić to programowo gdzie indziej i działa. Próbowałem tego samego podejścia do tego i nadal dostaję błąd.
Z tego, co widziałem, każda inna metoda niż za pośrednictwem NavigateUri wydaje się być blokowana przez blokery wyskakujące. Jeśli patrzysz na obsługę wielu przeglądarek, nie jest to opcja. –
To dobra uwaga, nie myślałem o blokach wyskakujących okienek. Zmieniłem cel hiperłącza na "_self" z myślą o blokach wyskakujących okienek. Ponieważ cel nie ma znaczenia dla mailto: – ShawnFeatherly