【发布时间】:2013-01-27 18:46:15
【问题描述】:
我的 Metro 应用程序中有一个 ListView,其中一些禁用的项目显示为灰色。我想将这些项目的样式更改为启用项目的默认样式,但仍然需要禁用这些项目。我认为如果我只需要以某种方式跳过禁用项目的灰显并且我不知道该怎么做,它会产生相同的效果,所以请帮忙。
【问题讨论】:
标签: c# xaml windows-8 windows-runtime winrt-xaml
我的 Metro 应用程序中有一个 ListView,其中一些禁用的项目显示为灰色。我想将这些项目的样式更改为启用项目的默认样式,但仍然需要禁用这些项目。我认为如果我只需要以某种方式跳过禁用项目的灰显并且我不知道该怎么做,它会产生相同的效果,所以请帮忙。
【问题讨论】:
标签: c# xaml windows-8 windows-runtime winrt-xaml
您需要修改ListViewItem 的样式。最简单的方法是在设计器中右键单击ListViewItem,然后选择Edit Template > Edit a Copy...:
下一步是命名新样式并选择放置位置:
在样式中找到以下块:
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="0" To="{StaticResource ListViewItemDisabledThemeOpacity}" Storyboard.TargetProperty="Opacity" Storyboard.TargetName="contentPresenter"/>
</Storyboard>
</VisualState>
您可以将其删除或注释掉,以防止项目变灰。当然你也可以随心所欲地改变Disabled视觉状态的风格。
【讨论】: