我有一个通过
绑定到可观察集合的组合框cmbBladesTab1.ItemsSource = easyRunData.olstBlades;
工作正常。 我希望将组合框绑定到所有值加上一个。
E.g。
easyRunData.olstBlades;
包含"PL1", "PL2", "PL3", "PL4"
cmbBladesTab1
包含"ALL BLADES", "PL1", "PL2", "PL3", "PL4"
- ADD所有工作都必须从代码隐藏
完成感谢您的帮助。
答案 0 :(得分:1)
最简单的方法是在observable集合中添加一些带有前缀文本/键的额外项。 这样,因为它在集合中,它将在组合框中可见,当用户选择此项时,您可以评估它以查看它是否是添加的项目。
确实给出了一个很好的例子作为这个问题的答案add an item to combobox before bind data from data base
答案 1 :(得分:1)
您可以添加一个属性,将特定项添加到列表中。
ObservableCollection<string> myCollection;
ObservableCollection<string> MyCollectionViewProp
{
get
{
var tempCollection = new ObservableCollection<string>(myCollection);
tempCollection.Add("Extra element");
return tempCollection;
}
}
根据集合的大小和访问次数,这可能是编程最简单的解决方案。如果您需要经常访问它,此解决方案会变得越糟糕,因为它每次都会创建一个新的集合。 在这种情况下,您应该听取CollectionChanged事件并保留一个单独的冗余列表。