【发布时间】:2020-04-28 03:45:56
【问题描述】:
我有一个 ComboBox,里面有一个复选框和一个文本块。
我希望当 ComboBox 中的一个项目被选中时,ComboBox 项目所包含的 CheckBox 的状态被切换。
我在这里和互联网上的其他地方看了很多,但我没有找到任何具体的内容。
请帮忙。谢谢。
【问题讨论】:
我有一个 ComboBox,里面有一个复选框和一个文本块。
我希望当 ComboBox 中的一个项目被选中时,ComboBox 项目所包含的 CheckBox 的状态被切换。
我在这里和互联网上的其他地方看了很多,但我没有找到任何具体的内容。
请帮忙。谢谢。
【问题讨论】:
我会尝试这样的:
<ComboBox ItemsSource="{Binding MySource}">
<ComboBox.ItemTemplate>
<DataTemplate>
<ToggleButton x:Name="Wrapper"> <!-- CheckBox are good too -->
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding TheString}" />
<CheckBox IsChecked="{Binding Path=IsChecked, ElementName=Wrapper, Mode=OneWay}" />
</StackPanel>
</ToggleButton>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
您只需重写“包装器”ToggleButton(或CheckBox)的模板,使其仅显示其内容。
希望对你有所帮助。
【讨论】: