如何更改列表框中未选中的项目颜色
答
很容易的,如果它确定为您在列表框
listBox1.Resources[SystemColors.InactiveSelectionHighlightBrushKey] = Brushes.Blue;
重写Windows颜色我拿起你的RGB颜色,所以要精确是:
listBox1.Resources[SystemColors.InactiveSelectionHighlightBrushKey] = new SolidColorBrush(Color.FromArgb(255, (byte)51, (byte)153, (byte)255));
答
正如你已经看到了答案中的链接,你需要应用的风格。现在您需要通过代码来应用该样式(在XAML中定义)的帮助吗?如果是,则适用下面的代码:
Style style = this.FindResource("YourStyleName") as Style;
myListBox.Style = style;
,如果你的风格是在同一窗口中的XAML中定义的上面的代码工作。如果是别的地方,请按照下面的代码:
Style style = Application.Current.FindResource("YourStyleName") as Style;
myListBox.Style = style;
话虽这么说,我不建议通过C#
添加listbox
,因为它可以通过强硬C#来处理UI。我建议在XAML中定义列表框,并使用databinding
,INotifyPropertyChanged
来降低代码复杂度。
我希望我已经回答了您的问题。让我知道评论部分是否还有其他内容。
此外,请注意:在问题中你提到的链接。完全一样的样式将在XAML去
我没有xaml它是通过appdomain,dll定义的插件。 – Luca
所以你说的是,你没有XAML代码显示数据的窗口?如果是的话,你可以分享一个演示样本解决方案或更多的代码,通过它我们可以解决你的问题? –