En cliquant sur les liens hypertexte dans un RichTextBox sans appuyer sur CTRL - WPF
J'ai un WPF RichTextBox avec isReadOnly
ensemble de True
. Je voudrais que les utilisateurs soient en mesure de cliquer sur les liens hypertexte contenus dans le RichTextBox, sans avoir à maintenir Ctrl.
L'événement Click sur le lien Hypertexte ne semble pas de feu, sauf Ctrl est tenue vers le bas, donc je ne suis pas sûr de la façon de procéder.
Déjà en remerciant au pigeon d'argile? Très délicat!
c'était une signature (regardez l'orthographe)
Hehehe, je suis en fait John, mais si Skeet vient à travers, je vais certainement remercier 🙂
c'était une signature (regardez l'orthographe)
Hehehe, je suis en fait John, mais si Skeet vient à travers, je vais certainement remercier 🙂
OriginalL'auteur John Noonan | 2009-04-17
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé une solution. Ensemble IsDocumentEnabled pour "Vrai" et de définir IsReadOnly à "True".
Une fois que je l'ai fait, la souris se transforme en "main" quand j'ai passez la souris sur un texte affiché à l'intérieur d'une balise de lien Hypertexte. En cliquant sur sans la tenue de contrôle de feu le "Clic" de l'événement.
Je suis en utilisant WPF .NET 4. Je ne sais pas si les versions antérieures de .NET ne fonctionnent pas comme je l'ai décrit ci-dessus.
OriginalL'auteur JHubbard80
JHubbard80's réponse est une solution possible, c'est la façon la plus simple si vous n'avez pas besoin de contenu pour être sélectionné.
Cependant j'ai besoin de ça 😛 voici ma démarche: définir un style pour le
Hyperlink
s à l'intérieur de laRichTextBox
. L'essentiel est d'utiliser unEventSetter
pour faire de laHyperlink
s de la manipulation de laMouseLeftButtonDown
événement.Et dans le code-behind:
Grâce à gcores pour la inspiaration.
La manipulation de l'événement click a fonctionné pour moi. Il pourrait être un Windows 10 / WPF 4.5 chose, mais cela a fonctionné. Merci.
OriginalL'auteur hillin
Réussi à trouver un moyen de contourner cela, un peu par accident.
Le contenu qui est chargé dans mon RichTextBox est simplement stockée (ou d'entrée) comme une chaîne simple. J'ai sous-classé le RichTextBox pour permettre la liaison à l'encontre de Document de la propriété.
Ce qui est pertinent pour la question, c'est que j'ai un IValueConverter Convert() surcharge qui ressemble à quelque chose comme ceci (code non-essentiel à la solution a été extraite):
Cela me met le comportement que je veux (en poussant la plaine des chaînes en RichTextBox et d'obtenir la mise en forme) et aussi des liens qui se comportent comme un lien normal, plutôt que celui qui est incorporé dans un document Word.
Cette réponse devrait avoir la plus upvotes.
OriginalL'auteur John Noonan
Avez-vous essayé la manipulation de l'événement MouseLeftButtonDown au lieu de l'événement Click?
OriginalL'auteur gcores