我创建检查列表框下面的模板:WPF选中列表框中的问题
<Style x:Key="CheckBoxListStyle" TargetType="{x:Type ListBox}">
<Setter Property="SelectionMode" Value="Multiple"></Setter>
<Setter Property="ItemContainerStyle">
<Setter.Value>
<Style TargetType="{x:Type ListBoxItem}" >
<Setter Property="Margin" Value="2" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBoxItem}">
<CheckBox IsChecked="{Binding Path=xxxxxxxxxxx,RelativeSource={RelativeSource TemplatedParent},Mode=TwoWay}"> <ContentPresenter></ContentPresenter>
</CheckBox>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Setter.Value>
</Setter>
</Style>
<ListBox Style="{StaticResource CheckBoxListStyle}" ItemsSource="{Binding Path=Configuration.ProductTypes}" DisplayMemberPath="ProductName" />
我的问题是,我收到来自数据库中的所有产品类型并将其绑定到列表框的ItemsSource。我有一个产品类别,其中包含它所属的产品类型列表。我需要根据产品的产品类型列表设置复选框的IsChecked属性。通常我需要设置一个或多个复选框IsChecked属性。产品可能属于一种或多种产品类型。选择模式是多选。如果用户检查额外的产品类型复选框..我需要得到总检查列表框并将它们保存到数据库...这是一个MVVM WPF应用程序...关于如何解决这种情况的任何想法...
在控制模板中IsChecked的路径是什么?
感谢 雷伊
让我simplyfy我的问题:我需要复选框,文本块列表框。文本块数据上下文不同,复选框数据上下文不同。我的意思是他们从不同的对象获取数据。不知道如何实现...
ProductType包含数据库中所有可能的产品类型。基于产品ID,我将从DB获得一个产品对象,其中包含它所属的产品类型的子清单。没有被选择或缺陷的属性。我将有一个产品名称和ID。我会研究datatemplate的事情..谢谢... – Manohar 2009-11-28 05:54:47