0

我在 silverlight4 的组合框的数据模板中有一个复选框。现在我想在它的 selectedindex 更改事件上获取组合框中的复选框。那么我该怎么做呢?

这是我的代码:

 <ComboBox Height="Auto" x:Name="CB_Categories" SelectionChanged="CB_Categories_SelectionChanged" Tag="">
                                <ComboBox.ItemTemplate>
                                    <DataTemplate>
                                    <CheckBox IsChecked="False" Content="{Binding Name}" CommandParameter="{Binding ProductCategoryID}" Click="CheckBox_Click" />
                                    </DataTemplate>
                                </ComboBox.ItemTemplate>
                            </ComboBox>

请帮帮我。

谢谢,

4

1 回答 1

1

虽然可以这样做,但最好将要调查或更改的复选框属性绑定到背景视图模型或控制器中的值。

例如,如果IsChecked您想将其更改为 true,请尝试以下操作:

<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" Content="{Binding Description}" />

然后,您ComboBox使用其ItemsSource属性将 连接到项目列表:

<ComboBox ItemsSource="{Binding Options}">
    <ComboBox.ItemTemplate>
        <CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" Content="{Binding Description}" />
    </ComboBox.ItemTemplate>
</ComboBox>

此外,您还必须设置DataContext容器控件的 或ComboBox以便控件可以访问具有这些属性的对象。

这样做,意味着您可以在控件或窗口的代码隐藏中使用更少的代码,这些代码只是在执行管道工作,例如更新控件。

如果您需要更多示例,请告诉我...

于 2013-01-12T12:45:41.340 回答