Laden...

In Richtextbox markierten Text als markiert behalten wenn Box Fokus verliert

Erstellt von Tzigo vor 4 Jahren Letzter Beitrag vor 4 Jahren 1.274 Views
T
Tzigo Themenstarter:in
20 Beiträge seit 2019
vor 4 Jahren
In Richtextbox markierten Text als markiert behalten wenn Box Fokus verliert

Mahlzeit zusammen!

Ich schreib mir gerade einen kleinen Texteditor, welcher eine RTB beinhaltet.
Das Form hat auch einen Toolstrip mit den StandartItems sowie ComboBoxen, welche die installierten Fonts beinhalten.
Der Fontwechsel sowie Bold, Italic und Underlined funktionieren soweit einwandfrei.

Mein Problem ist, wenn ich die ComboBox für die Fonts anklicke, verschwindet natürlich die Markierung des Textes, da die RTB ja den Focus verliert.
Und genau das will ich verhindern. Hat da jemand einen Tip wie ich das verwirklichen kann?

Liebe Grüße
Tzigo

463 Beiträge seit 2009
vor 4 Jahren

Einfachster Weg wäre meiner Meinung nach, beim Verlieren des Focus die Markierung zu speichern und beim Erhalten des Focus die Markierung wieder zu setzen.

Event - LostFocus

Event - GotFocus

656 Beiträge seit 2008
vor 4 Jahren

Bist du sicher, dass die Markierung danach tatsächlich weg ist; und nicht nur einfach "nicht angezeigt" wird?
Die Selektion (welcher Text gewählt ist) sollte nach wie vor da sein, nur siehst du sie vermutlich nicht.

Probier mal per Button Click die Selektion als MessageBox auszugeben, dann siehst du dass die Auswahl noch da ist.

4.931 Beiträge seit 2008
vor 4 Jahren

Um die Markierung (selection) auch bei Fokuswechsel zu sehen, gibt es die Eigenschaft TextBoxBase.HideSelection (u.a. RichTextBox und TextBox erben von TextBoxBase):


richTextBox.HideSelection = false;

T
Tzigo Themenstarter:in
20 Beiträge seit 2019
vor 4 Jahren

Danke euch 3en für die Antworten.
Der Tip von Th69 hat dann das erwünschte ergeben.

Anscheinend fehlt mir noch einiges an Hintergrundwissen. Die SDK-/MSDN finde ich auch ziemlich unübersichtlich.

Danke nochmal.

Liebe Grüße
Tzigo