4 silverlight wpf listbox listboxitem
我有一个绑定到数据表的数据绑定多选列表框.当我选择listboxitem时,我希望自动选择同一列表框中的其他listboxitems.我希望只需点击一下即可选择多个项目.我怎样才能做到这一点?我不能在SelectionChanged事件中这样做,因为它导致再次调用同一事件并完全打破我的逻辑.
请帮忙.任何帮助将受到高度赞赏.
更新:
我的列表框已绑定到具有IsSelected列的数据表.我在样式设置器中使用此列的值来选择listboxitem.假设我在datatable中有10行.如果用户选择第二个listboxitem,我可以将数据库中的对应行的isselected选为1.
但是我怎样才能同时选择其他项目呢?我认为肯特说,我宁愿使用属性进行绑定.但是,如何使用属性将列表框绑定到数据表?
绑定IsSelected到数据类中的属性.更改属性后,执行逻辑以更新IsSelected其他数据对象中的属性:
<ListBox>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="IsSelected" Value="{Binding IsSelected}"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
Run Code Online (Sandbox Code Playgroud)
然后在您的数据类中,您可以使用以下内容:
public bool IsSelected
{
get { return _isSelected; }
set
{
if (_isSelected != value)
{
_isSelected = value;
OnPropertyChanged("IsSelected");
UpdateOtherItems();
}
}
}
Run Code Online (Sandbox Code Playgroud)
或者您可以让数据项引发一个IsSelectedChanged事件,并让拥有类管理选择的相互依赖性.
| 归档时间: |
|
| 查看次数: |
7681 次 |
| 最近记录: |