Combobox绑定和空项目

Combobox绑定和空项目

问题描述:

我正在写一个桌面应用程序的搜索表单,并且我有一个组合框绑定的问题。
用户可以按各种标准(城市,价格等)搜索属性。
我想将组合框绑定到所有可能城市的列表,但我想让用户选择不选择任何内容,以便它可以搜索所有城市中的属性。
我该怎么做?
我正在使用linq2sql进行数据访问。Combobox绑定和空项目

+0

这是关于winforms还是wpf?此外,您是否可以澄清一下您的问题:如果用户未选择任何标准,并且只有符合标准的城市(如果用户选择了这些标准),那么组合框必须显示所有城市吗? – Dabblernl 2009-10-25 13:04:15

+0

这是winforms应用程序。下拉列表中的第一项必须是空的,默认情况下会被选中。我不想放置按钮'清除城市',因为用户可以通过从列表中选择一个空白值来轻松实现。 – 2009-10-25 13:22:11

好吧,假设你已经绑定的组合框您从数据库中抽取的城市列表:

class City 
{ 
    public string ID{get; private set;} 
    public string Name{get;private set;} 

    public City(string id, string name) 
    { 
     ID=id;Name=name; 
    } 
} 

只是一个空洞的城市添加到列表:

cityList.Add(new City("AA",string.empty"); 

当你绑定将城市列表的组合框排序并对其进行排序,ID为“AA”的城市将位于顶部。在您的搜索代码中,您现在可以调整您的搜索算法,用于用户选择ID为“AA”的城市;

Cleverer解决方案当然是可能的,但我需要看到搜索方法的一些代码,以帮助您进一步。