我是 WPF 的新手,我在网上阅读了很多类似的问题,但我仍然没有让我的列表视图工作。我想根据属性(红色、黄色或绿色)更改列表视图元素的背景颜色
在itemsSource我的ListView的是这个类的一个观察的名单:
public class ConnectionItem
{
public ConnectionItem(string name)
{
Name = name;
}
public string Name { get; }
private string _color = "Red";
public string Color { get => _color; }
private ConnectionStatus _status;
public ConnectionStatus Status
{
set
{
if (value == _status)
{
return;
}
else
{
switch (value)
{
case ConnectionStatus.Connected:
_color = "Yellow";
break;
case ConnectionStatus.Ready:
_color = "Green";
break;
default:
_color = "Red";
break;
}
}
}
}
}
我在 xaml 中定义了我的列表视图,如下所示:
<ListView x:Name="lvConnections">
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<EventSetter Event="MouseDoubleClick" Handler="ListViewItem_MouseDoubleClick" />
</Style>
</ListView.ItemContainerStyle>
<ListView.Resources>
绑定不起作用,我所有的列表视图元素都没有背景颜色。我不需要通过ListView.Resources绑定完全相同的解决方案,但我在其他方法中也没有成功。
相关分类