Reputation:
I have to create listBox via code behind. After that I have to change the colour that the selected item has when the listbox is not selected. I have found that solution but am not able to render it via code behind.
Thank you
Upvotes: -1
Views: 442
Reputation: 2583
Very easy if it's ok for you overriding the windows colour on the listbox
listBox1.Resources[SystemColors.InactiveSelectionHighlightBrushKey] = Brushes.Blue;
I picked your rgb colour so to be precise it's:
listBox1.Resources[SystemColors.InactiveSelectionHighlightBrushKey] = new SolidColorBrush(Color.FromArgb(255, (byte)51, (byte)153, (byte)255));
Upvotes: 0
Reputation: 5276
As you've already seen the answer as in the link, you need to apply a style. Now You need help applying that style (defined in XAML) via code behind? If yes then apply the below code:
Style style = this.FindResource("YourStyleName") as Style;
myListBox.Style = style;
The above code works if your style is defined in the same Window's XAML. If it's somewhere else, follow the below code:
Style style = Application.Current.FindResource("YourStyleName") as Style;
myListBox.Style = style;
That being said, I would not recommend adding a listbox
via C#
as it can be tough to handle UI via C#. I would recommend defining listbox in XAML and using databinding
, INotifyPropertyChanged
to reduce your code complexity.
I hope I've answered your question. let me know if there is anything else in the comments section.
Also, please note: in the question the link you've mentioned. exactly like that the style will go in the XAML
Upvotes: 0