【发布时间】:2019-06-19 06:16:51
【问题描述】:
我在运行时生成一个 ListView 并不断填充它。问题是我想在将鼠标悬停在一个项目上或选择它时禁用颜色变化。
每个 ListViewItem 都不是可聚焦的。这样颜色变化不会停留,仅在悬停在项目上时才会显示。 我尝试通过制作我的一种样式来禁用它,但不幸的是它没有按预期工作。
我用过这个样式
Setter setter = new Setter()
{
Property = Control.BackgroundProperty,
Value = null
};
Setter setter1 = new Setter()
{
Property = Control.BorderBrushProperty,
Value = null
};
Trigger trigger = new Trigger()
{
Property = ListBoxItem.IsSelectedProperty,
Value = true,
Setters = { setter, setter1 }
};
Style style = new Style()
{
Triggers = { trigger }
};
我也尝试将 ListView.FocusVisualStyle 设置为 null,但也没有结果。
【问题讨论】:
-
listview可以设置Enabled=false
-
我建议使用
Transparent而不是null作为值。 -
@irategenius setting enabled = false 也会禁用滚动功能
-
@GaurangDave 我应该在哪里应用样式。我尝试了 ListViewItem.FocusVisualStyle、ListView.ItemContainerStyle 和 ListView.FoucsVisualStyle。他们中的任何一个都没有改变任何东西