检查ComboBox中是否存在项目

时间:2011-06-25 12:39:05

标签: c# .net silverlight windows-phone-7

使用WP7应用程序时,需要检查组合框中是否存在某个项目并获取其索引。使用Contains(),IndexOf()但没有返回正确的结果,总是找不到。

由于

2 个答案:

答案 0 :(得分:1)

你可能需要覆盖Contains&的对象Equals。 ComboBox的IndexOf工作,虽然某些答案问题没有包含足够的细节

答案 1 :(得分:0)

如果您没有绑定到数据源,那么您可以使用comboBox1.SelectedIndex来获取索引。

如果您绑定到数据源,例如带有 DataTable 数据集,名为 dt1 ,然后您可以使用dt1.Rows.Count - 1获取与顺序对应的索引ComboBoxItem 即可。如果将其绑定到数据源,则无法直接获取 ComboBoxItem 的选定索引。

如果数据源的顺序(例如 DataTable )与 ComboBoxItem 的顺序不同,那么您应该转换 DataTable DataView 进行排序,并将 ComboBox 绑定到 DataView (DataView.ToTable as DataTable).Rows.Count - 1将获得 ComboBoxItem 的正确排序,因此,索引。