IsSynchronizedWithCurrentItem 会让 ListBox 默认选中第一项
<Expander HorizontalContentAlignment="Stretch" ExpandDirection="Down" Expanded="Expander_Expanded" Header="{Binding ElementName=PART_HINTS, Path=SelectedItem.Name, IsAsync=False}" IsExpanded="{Bi nding Path=IsExpanded, Mode=TwoWay}"> <Expander.Content> <ListBox x:Name="PART_HINTS" IsSynchronizedWithCurrentItem="True"> <ListBox.ItemsSource> <PriorityBinding> <Binding Path="HintsSlow" IsAsync="True" /> <Binding Path="HintsFast" IsAsync="False" /> </PriorityBinding> </ListBox.ItemsSource> <ListBox.ItemTemplate> <DataTemplate> <StackPanel> <TextBlock Text="{Binding Name}" /> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
假如把IsSynchronizedWithCurrentItem设置成False,那么Expander默认就不会有Header,除非你手动选中ListBox中的某一个Item,但是一旦设置成true,ListBox就会默认选中第一项。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步