gpt4 book ai didi

WPF,ListBox的ItemTemplate有CheckBox,但是CheckBox好像不是item

转载 作者:行者123 更新时间:2023-12-04 11:30:14 25 4
gpt4 key购买 nike

我只想要我曾经与 Windows 窗体一起使用的 CheckListBox。

    <ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Name}"/>
</DataTemplate>
</ListBox.ItemTemplate>

起初这似乎有效,但有很多问题。简而言之,它就像一个 CheckBox float 在真实项目上,而不是 CheckBox 是项目。

我的意思是,(1)单击复选框的文本不会选择 ListBox 项,(2)按上下键不会聚焦复选框。我必须单击复选框才能聚焦它。我在谷歌上搜索了解决方案,但没有干净的解决方案。是我想要的太多了吗?

我只想要 CheckedListBox 的行为...

我通过处理复选框的 PreviewMouseDown 事件并手动选择项目来解决 (1)。好像不干净。

最佳答案

这是因为您的 CheckBoxListBox .它作为列表中的一个项目处理,具有它的所有功能。

如果您只想构建一个复选框列表并且不需要列表的选择逻辑,请使用 ItemsControl而不是 ListBox .用法是平等的。如果您想让 CheckboxList 可滚动,请使用 ScrollViewer 包装 ItemsControl。

<ScrollViewer>
<ItemsControl ItemsSource="{Binding YourItemsCollection">
<ItemsControl.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Name}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControls>
</ScrollViewer>

关于WPF,ListBox的ItemTemplate有CheckBox,但是CheckBox好像不是item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5901665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com