我正面临一些创建Silverlight自定义控件的麻烦 - 带复选框的组合框。 我们有开箱即用的东西吗?
答案 0 :(得分:2)
(抱歉我的英语不好)
如果要将复选框显示为comboBox的项目,可以使用简单的DataTemplate工作:
<ComboBox Name="combo" >
<ComboBox.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Text}" IsChecked="{Binding IsChecked,Mode=TwoWay}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
现在在你的代码背后创建一个ObservableCollection&lt; CheckItem&gt; ChekItem是一个基本类:
public class CheckItem
{
public string Text { get; set; }
public bool IsChecked { get; set; }
}
并将其与您的comboBox ItemsSource相关联。 如果您想知道检查哪些项目,很简单:
var checkedItems = myList.Where(i => i.IsChecked == true);