C# WPF SelectedIndex和IsSelected不';t同步
这是我的xaml,“SelectedListIndex”是来自viewmodel的属性绑定,我更新了它。 我只想显示所选项目,可见性应该随触发器更新。C# WPF SelectedIndex和IsSelected不';t同步,c#,wpf,triggers,listboxitem,C#,Wpf,Triggers,Listboxitem,这是我的xaml,“SelectedListIndex”是来自viewmodel的属性绑定,我更新了它。 我只想显示所选项目,可见性应该随触发器更新。 当我移除触发器时,所选项目会发生更改。但是当我按下触发器时,可见性不会更新。可能是因为IsSelected是布尔值,您正在检查它是否为1。另外,如果默认情况下所有项目都将被折叠,您希望用户如何选择任何项目?我有“下一步”和“上一步”按钮,索引为+/-1。也可以使用Trigger代替Trigger:(您现在可以看到新代码)更改,我可以看到第一个项目
当我移除触发器时,所选项目会发生更改。但是当我按下触发器时,可见性不会更新。可能是因为
IsSelected
是布尔值,您正在检查它是否为1。另外,如果默认情况下所有项目都将被折叠,您希望用户如何选择任何项目?我有“下一步”和“上一步”按钮,索引为+/-1。也可以使用Trigger
代替Trigger
:
(您现在可以看到新代码)更改,我可以看到第一个项目。但是当我更改SelectedIndex时没有任何更改。SelectedListIndex
是否在更改时引发PropertyChanged
InotifyPropertyChanged接口的事件?
<ListBox Grid.Column="1"
HorizontalAlignment="Stretch" SelectedIndex="{Binding SelectedListIndex}"
VerticalAlignment="Stretch" BorderThickness="0" >
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="Visibility" Value="Collapsed"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="true">
<Setter Property="Visibility" Value="Visible"/>
</Trigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>