bonjour,
je suis entrain de développer un programme qui permet de modifier les états des pièces d'une véhicule ( true/false) , voici la démarche que j'ai suivi
- j'ai créer une checkboxlist avec une fonction d'initialisation qui prend les valeur de la base de donné comme suite :
Code C# :
ds.Tables["DataTablePieceControle"].Merge(dt);
CheckList.DataSource = ds;
CheckList.DataTextField = "NOM";
CheckList.DataValueField = "ID_PIECE";
String et = null;
CheckList.DataBind();
for (int i = 0; i < CheckList.Items.Count; i++)
{
et = dt.Rows[i]["ETAT_PIECE"].ToString();
CheckList.Items[i].Selected = Boolean.Parse(et);
}
pour cette étape ca marche bien ,
- l'hors de demande d'utilisateur le programme affiche l'ensemble des pièces avec les états déjà dans la base de donnée
mon problème c'est lorsque l’utilisateur décoché ou bien coché une valeur je doit mettre ajours l’État du pièce sélectionné , donc je doit fournir a une fonction l'ID du pièce voila le code que j'ai utiliser
Code C# :
public void SelectedIndex(object sender, EventArgs e)
{
int pe = CheckList.SelectedIndex;
int i ,id_piece;
string s=null;// la valeur ou je stock l'id de piece selectioné
for (i = 0; i < (CheckList.Items.Count ); i++)
if (CheckList.Items[i].Selected)
s = CheckList.Items[i].Text;
id_piece = int.Parse(s);
update_etat(id_p);
}
ce que j'ai remarqué c'est que les indice de cette checklist sont pas trier ex( 1 , 0, -1) dans le cas ou j'ai 3 case a coché
je suis bloqué dans cette étapes , merci infiniment d'avoir m'aider je doit fournir les résultat a mon patron au max lundi
merci d'avoir lire mon sujet :) :) ):