我的表单中有两个ComboBox。当选择第一个ComboBox的任何项目时,将更新第二个ComboBox。假设第一个CB是国家,第二个是该国的城市。
我使用下面的代码来过滤第二个CB(城市)的bindingSource:
cityTblBindingSource.Filter = string.Format("CountryID = {0}", CustomerCountryID);
令人惊讶的是,它适用于某些国家/地区。但对于一些国家,将会有重复的城市。
实施例(精细): 国家=伊朗=>城市= Isfehan,德黑兰,亚兹德
实施例(有问题): 国家=德国=>城市=慕尼黑,柏林,慕尼黑,柏林
如何摆脱重复的物品?
答案 0 :(得分:0)
尝试在数据源上使用linq,这样可以避免更改原始数据源。
List<Cities> cities = (List<Cities>)cityTblBindingSource.DataSource;
cityTblBindingSource.DataSource = cities.Where(x=>x.CountryID == CustomerCountryID).Distinct();