我正在尝试以下内容在列表视图中将所选listviewitem的大小增加25%:
<Style x:Key="ListView.AlternatingColors_HeightIncreaseIfSelected"
TargetType="ListViewItem">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Height">
<Setter.Value>
<Binding Path="ActualHeight"
ConverterParameter="@VALUE*1.25"
RelativeSource="{RelativeSource Self}">
<Binding.Converter>
<Converters:MathConverter />
</Binding.Converter>
</Binding>
</Setter.Value>
</Setter>
</Trigger>
...
但是,即使触发器为IsSelected
,我也会得到一个无限循环。我尝试使用Path="Height"
,但将NaN作为转换器中的值。
以上内容来自ListView ItemContainerStyle
上设置的样式,以防我的RelativeSource
可能不正确,但我确实尝试了几种变体。
知道我怎么能做到这一点吗?
答案 0 :(得分:1)
创建无限循环,因为绑定目标会修改绑定源。因此,将反复计算绑定值。 由于您只想增加一次高度,只需设置
即可Mode=OneTime
关于绑定。当源更改时,这将停止刷新绑定。