2009-02-04 6 views
1

Si vous n'avez pas lu le problème first, sachez qu'il faut rattraper son retard. Maintenant, comment puis-je supprimer ces cases à cocher? J'ai essayé d'utiliser la même approche que @colithium m'a dit d'utiliser pour vérifier l'état de toutes les cases à cocher, mais quand j'ai lancé le programme et cliqué sur clear, j'ai l'erreur suivante:Programmation d'un testeur de compétence (problème) v2.0

Impossible de lancer l'objet de type ' System.Windows.Forms.Button 'pour taper' System.Windows.Forms.CheckBox '.

Répondre

1

Je suppose que votre méthode ressemble à ceci:

private void clearButton_Click(object sender, EventArgs e) 
{ 
    CheckBox cb = (CheckBox)sender; 
    cb.Checked = false; 
} 

Dans ce cas, le « expéditeur » est le bouton clair, pas une case à cocher. emprunt de la réponse de Stormenet:

private void clearButton_click(object sender, EventArgs e) 
{  
    foreach (Control c in this.Controls) 
    { 
     CheckBox cb = c as CheckBox; 
     if (cb != null) 
     { 
      cb.Checked = false; 
     } 
    } 
} 

1

Définissez CheckBox.Checked sur false. Si ce n'est pas ce dont vous avez besoin, veuillez fournir plus d'informations dans la question.

6

Je suppose que vous exécutez un foreach sur tous vos contrôles et avez oublié de regarder si le contrôle est réellement une case à cocher.

foreach (Control c in this.Controls) { 
    CheckBox cb = c as CheckBox; 
    if (cb!=null) { 
     //do your logic 
    } 
}