7

I am working on an application having both WinForms and WPF controls; In case of WinForms TextBox selected text Background color comes Blue and White respectively whereas in WPF TextBox it is LightBlue and Black.

As answered in these questions I can use SelectionBrush property(WPF 4) to change the selected text's background, but How can I change the foreground color of selected text?

How can you change the highlighted text color for a WPF TextBox?

How can I change the highlighted text color for a TextBox?

2 Answers 2

9

Pre .NET 4.8 this is not possible.

As noted by Woodman, this has been changed in .NET 4.8 with the introduction of the SelectionTextBrush property.

Sign up to request clarification or add additional context in comments.

3 Comments

This is true. Normally you can try to change the SystemColors by assigning them a new value in an object's Resources dictionary. But both the regular foreground and the selected text foreground are looking at the same key (ControlTextBrushKey) for the color. So you can't separate these two colors.
@Moozhe +1 it seems your comment should be an answer! It's so useful
for me foreground is black, yet the selected text is white
2

Starting with .net 4.8 it is possible in TextBox using TextBoxBase.SelectionTextBrush https://learn.microsoft.com/en-us/dotnet/api/system.windows.controls.primitives.textboxbase.selectiontextbrush?view=net-5.0

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.