locked
Email mit Hyperlinkbutton RRS feed

  • Frage

  • Hallo,
     
    Dies ist der Code in der XAML.
    <HyperlinkButton Content="Email" NavigateUri="mailto:somebody@domain"
    TargetName="_blank" />
    Es wird wie erwartet Outlook geöffnet zusätzlich öffnet sich aber auch IE
    mit der Emailadresse. Wie verhindere ich, dass der IE geöffnet wird.
     
    Bin für einen Hinweis dankbar, da ich bis jetzt keine Lösung gefunden habe.
     
    Liebe Grüße
    Kurt
     
     
    Freitag, 25. Juni 2010 06:50

Antworten

  • Hallo Kurt,

    normalerweise sollte das so funktionieren, dass Du den Attribut-Wert von TargetName auf "_self" setzt. Ich habe das probiert, aber bei wird dann immer ein Fehler geworfen.

    Ich habe dann mal probiert, dem Click-EventHandler des HyperlinkButton folgenden code hinzuzufügen, den ich mal in einer Silverlight 2 Anwendung erfolgreich verwendet habe:

     Private Sub MailTo_Click(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles MailTo.Click
     Try
    
      System.Windows.Browser.HtmlPage.Window.Navigate(New Uri("mailto:somebody@domain.de?subject=E-Mail an Mr. X"))
    
     Catch ex As Exception
    
      MessageBox.Show("Lokaler E-Mail-Client konnte nicht geöffnet werden.", "Hinweis", MessageBoxButton.OK)
    
     End Try
    
     End Sub
    

    Leider mit dem selben Ergebnis, dass ein Fehler geworfen wird.

    Der Fehler lautet jeweils, dass der Mailclient nicht geöffnet und eine bestimmte dll nicht initialisiert werden konnte (wobei die Fehlermeldung nicht aus meiner Catch-Verzwiegung kommt).

    Vielleicht funktioniert eine der beiden Alternativen bei Dir?!? Probiert habe ich es in Silverlight 4.

     

    Beste Grüße,

    Martin

    Samstag, 26. Juni 2010 07:45

Alle Antworten

  • Hallo Kurt,

    normalerweise sollte das so funktionieren, dass Du den Attribut-Wert von TargetName auf "_self" setzt. Ich habe das probiert, aber bei wird dann immer ein Fehler geworfen.

    Ich habe dann mal probiert, dem Click-EventHandler des HyperlinkButton folgenden code hinzuzufügen, den ich mal in einer Silverlight 2 Anwendung erfolgreich verwendet habe:

     Private Sub MailTo_Click(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles MailTo.Click
     Try
    
      System.Windows.Browser.HtmlPage.Window.Navigate(New Uri("mailto:somebody@domain.de?subject=E-Mail an Mr. X"))
    
     Catch ex As Exception
    
      MessageBox.Show("Lokaler E-Mail-Client konnte nicht geöffnet werden.", "Hinweis", MessageBoxButton.OK)
    
     End Try
    
     End Sub
    

    Leider mit dem selben Ergebnis, dass ein Fehler geworfen wird.

    Der Fehler lautet jeweils, dass der Mailclient nicht geöffnet und eine bestimmte dll nicht initialisiert werden konnte (wobei die Fehlermeldung nicht aus meiner Catch-Verzwiegung kommt).

    Vielleicht funktioniert eine der beiden Alternativen bei Dir?!? Probiert habe ich es in Silverlight 4.

     

    Beste Grüße,

    Martin

    Samstag, 26. Juni 2010 07:45
  • Hallo Martin,
     
    Der Hyperlinkbutton <HyperlinkButton Content="Email" NavigateUri="mailto:somebody@domain" TargetName="_blank" /> funktioniert.
    Als ich die SL Seite ins Web gestellt wurde im IE keine leere Seite geöffnet. Es öffnete sich nur Outlook.
     
    Mit den Werten _self und _blank im TargetName wird Outlook geöffnet. Verwende SL4.
    Ist die dll auf deinem System oder fehlt sie tatsächlich.
     
    LG Kurt
     
    Dienstag, 29. Juni 2010 06:48
  • Hallo Kurt,

    wenn Dir meine Antwort mit dem Hinweis auf _self geholfen hat dann markiere sie doch als Antwort.

    Das Problem das ich hier habe scheint irgendwie mit meiner Systemkonfiguration hier zusammenzuhängen.

    Beste Grüße,

    Martin

    Dienstag, 29. Juni 2010 10:02
  • Hallo Martin,
     
    es geht sowohl mit _self als auch mit _blank.
     
    LG Kurt
    "LawBot" schrieb im Newsbeitrag news:794bbd79-d8b0-4e5c-b319-aa286c7bb356...

    Hallo Kurt,

    wenn Dir meine Antwort mit dem Hinweis auf _self geholfen hat dann markiere sie doch als Antwort.

    Das Problem das ich hier habe scheint irgendwie mit meiner Systemkonfiguration hier zusammenzuhängen.

    Beste Grüße,

    Martin

    Dienstag, 29. Juni 2010 15:43
  • Hallo Kurt,

    ich hab es so gelöst, es öffnet sich nur das entsprechende E-Mail-Programm, also Outlook oder Mozilla Thunderbird usw. und sonst nix

    Grüße aus Mecklenburg-Vorpommern

    XAML:

    <

     

     

    HyperlinkButton x:Name="hb1" Content="E-Mail" Click="hb1_Click" />

    C#:

    private

     

     

    void hb1_Click(object sender, RoutedEventArgs e)

    {

         System.Windows.Browser.

     

    HtmlPage.Window.Navigate(new Uri(mailto:E-Mail-Adress));

    }

    Mittwoch, 4. August 2010 14:38