增加+1的变量值

时间:2010-02-26 21:50:41

标签: c# winforms combobox selectedindex

从下面的代码我得到一个从选定行到dataGridView的单元格值:

string Kategoria_ = dataGridView1.CurrentRow.Cells[1].Value.ToString();

然后我需要转换为int:

int category = Convert.ToInt32(Kategoria_);

并将此数字作为组合框的索引:

cmbCategory2.SelectedIndex = category;

问题是我正在使用这种查询:

SELECT '0' b, ' All' a union select kategori_id b, kategori_emri a from tbl_kategoria order by a

并且我总是有+1索引,所以我没有得到真正的索引(或使用-1索引号),因为已经为“全部”值保留了0?

因此,组合框中的所选项目没有正确的索引编号!!!

2 个答案:

答案 0 :(得分:2)

您的数据是否以1开头并且每行增加1?如果没有,你永远不会让你的SelectedIndex排队。您应该设置SelectedValue属性,并在数据绑定中将值字段定义为“b”。

答案 1 :(得分:2)

只需使用SelectedValue而不是SelectedIndex。这样就可以在Id范围和其他排序中留出空白。

通过设置ValueMember和DisplayMember(或ASP.NET中的DataValueSomething)属性来配置ComboBox。