我有一个WPF应用程序,可以动态添加和删除以列表视图为内容的选项卡。我想根据行中某列的内容更改列表视图中某行的背景色。我见过的所有解决方案都需要使用XAML中的样式,这与我目前的设置不兼容,因为列表视图完全是在运行时用C#创建的。我尝试过创建样式并添加数据触发器和设置器,但似乎没有任何改变。还有多个列表视图应该有不同的样式,所以我不确定更改所有列表视图的默认样式是否合适。
的数据列表视图的内容如下所示,WAR消息的背景应该是黄色的:
的
yptwkmov1#
根据@lidqy的评论,解决方案是改变
logListView.Style = style;
字符串到
logListView.ItemContainerStyle = style;
型样式声明行也需要从
Style style = new Style(typeof(System.Windows.Controls.ListView));
型到
Style style = new Style(typeof(System.Windows.Controls.ListViewItem));
型因为ItemContainerStyle显然是应用于ListViewItem(而不是ListView)的样式。
1条答案
按热度按时间yptwkmov1#
根据@lidqy的评论,解决方案是改变
字符串
到
型
样式声明行也需要从
型
到
型
因为ItemContainerStyle显然是应用于ListViewItem(而不是ListView)的样式。