Comment rendre le texte dans une zone de texte WinForms non sélectionnable sans le désactiver?

StackOverflow https://stackoverflow.com/questions/411143

  •  03-07-2019
  •  | 
  •  

Question

Est-il possible de rendre le texte d'une zone de texte non sélectionnable sans désactiver la zone de texte? C'est une RichTextBox et j'ai besoin de ses fonctionnalités de formatage et de sélection. Je ne peux pas le désactiver car je veux gérer les événements MouseMove et MouseDown.

Jusqu'à présent, j'ai pensé à désactiver la zone de texte et à y placer un panneau qui déléguerait ses événements aux gestionnaires de zone de texte, mais je ne peux pas rendre le panneau transparent afin de masquer la zone de texte.

Merci.

Était-ce utile?

La solution

Pourquoi ne pas gérer les événements .Enter ou .GotFocus pour effacer toute sélection effectuée?
Vous pouvez voir le contraire de ce que vous vouliez dans sélectionner automatiquement tout le texte. focus dans WinForms TextBox .

Autres conseils

Que diriez-vous de la gestion d'un événement de changement de sélection comme ceci:

    private void richTextBox1_SelectionChanged(object sender, EventArgs e)
    {
        this.richTextBox1.SelectionStart = this.richTextBox1.Text.Length;
    }

Je ne sais pas trop à quoi vous voulez en venir (vouloir quelque chose d'indélébile, mais ses fonctionnalités de sélection), mais la définition de ReadOnly doit-elle réellement accomplir ce que vous recherchez?

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