2010-02-26 10 views
2

À partir du code ci-dessous je reçois une valeur de cellule de la ligne sélectionnée à un datagridview:augmenter une valeur variable pour +1

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

alors je dois convertir en int:

int category = Convert.ToInt32(Kategoria_); 

et mettre ce numéro comme un indice à la combobox:

cmbCategory2.SelectedIndex = category; 

problème est que j'utilise ce genre de requêtes:Et j'ai toujours un index +1, donc je ne reçois pas le vrai index (ou pour utiliser le numéro d'index -1), car 0 est déjà réservé pour la valeur 'All'? Par conséquent, l'élément sélectionné dans la liste déroulante n'a pas de numéro d'index à droite !!!

+0

Veuillez reformater les sections de code pour les rendre plus lisibles. – AxelEckenberger

Répondre

2

Cela permettra également des écarts dans la gamme Id et d'autres classements.

Configurez le ComboBox en définissant les propriétés ValueMember et DisplayMember (ou DataValueSomething in ASP.NET).

+0

parfait et simple :) Merci ... – gaponte69

2

Vos données commencent par 1 et s'incrémentent de 1 pour chaque ligne? Sinon, vous n'obtiendrez jamais votre SelectedIndex à aligner. Vous devez définir la propriété SelectedValue et définir le champ de valeur comme "b" dans votre liaison de données. Utilisez simplement SelectedValue à la place de SelectedIndex

+0

réponse utile ... Merci! – gaponte69

Questions connexes