Question

Je peux charger un document RTF dans une RichTextBox, mais les liens que ce document contient vers certains sites Web ne fonctionnent pas. Quelqu'un a une idée pourquoi? Une solution pour que les liens fonctionnent?

Cordialement,
Paulo Azevedo

Était-ce utile?

La solution

Par défaut, WPF ne comprend pas où vous voulez afficher les liens. La classe Hyperlien déclenche donc un événement, RequestNavigate , et attend que vous, le concepteur de l’application, provoquiez la navigation réelle.

Je suppose que vous souhaitez simplement lancer le navigateur Web configuré par le système. Voici donc tout ce que vous devez faire:

  1. Accrochez le Lien hypertexte :: RequestNavigate événement routé
  2. Appelez Process.Start avec l'URL que vous recevez pour que le système d'exploitation lance le navigateur.

Cela pourrait ressembler un peu à ceci:

public class MyWindow : Window
{
    public MyWindow()
    {
        this.InitializeComponent();

        this.myRichTextBox.AddHandler(Hyperlink.RequestNavigate, MyWidow.HandleRequestNavigate);
    }

    private static void HandleRequestNavigate(object sender, RequestNavigateEventArgs args)
    {
            Process.Start(args.Uri.ToString());
    }
}

Autres conseils

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top