Chr*_*don 1 c# data-binding wpf listbox expander
我有一个ListBox包含一组'Expander'项目,我想做的是使IsExpanded
每个属性的属性独占.例如,如果我有10个扩展器ListBox
,我希望一次只打开一个.
这是我到目前为止:
<Window>
<Window.Resources>
<DataTemplate x:Key="NormalTemplate">
<Expander Margin="0" IsExpanded="True" Header="{Binding Model.Name}" Background="Green">
<Grid>
<StackPanel HorizontalAlignment="Stretch">
<TextBlock Text="{Binding Model.Description}" TextWrapping="Wrap" HorizontalAlignment="Stretch" Margin="0"/>
</StackPanel>
</Grid>
</Expander>
</DataTemplate>
</Window.Resources>
<Grid>
<ListBox ItemsSource="{Binding Groups}"
ItemTemplate="{DynamicResource NormalTemplate}"
/>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?我没有与一个ListBox
或者确实是扩展器绑在一起,哎呀 - 如果它需要改变的话我就不会束缚它.
什么决定了是否Expander
扩大了?如果是选择,您可以将IsExpanded
属性绑定到以下IsSelected
属性ListBoxItem
:
<Expander IsExpanded="{Binding IsSelected, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListBoxItem}}}" ...>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4620 次 |
最近记录: |