2010-11-24 6 views
3

Je veux créer une étiquette d'erreur lorsque mon FlowLayoutPanel est vide, mais je ne sais pas comment vérifier que le FlowLayoutPanel est vide. Ceci est mon code actuel:Vérifiez si flowLayoutPanel est vide dans C#

private void flowLayoutPanel1_ControlRemoved(object sender, ControlEventArgs e) 
     { 
      if (flowLayoutPanel1.Controls == null) 
      { 
       customtoolwarning.Visible = true; 
      } 
      else 
      { 
       customtoolwarning.Visible = false; 
      } 
     } 

S'il vous plaît Aide,

Merci

Répondre

3
private void flowLayoutPanel1_ControlRemoved(object sender, ControlEventArgs e) 
     { 
      if (flowLayoutPanel1.Controls.Count > 0) 
      { 
       customtoolwarning.Visible = true; 
      } 
      else 
      { 
       customtoolwarning.Visible = false; 
      } 
     } 
2

Le problème que vous utilisez en vous est vérifions Controls pour null pour déterminer si elle est vide. La propriété Controls ne sera jamais null mais sera à la place non nulle et aura 0 longueur si vide. Par exemple

if (flowLayoutPanel1.Controls.Count == 0) { 
    // It's empty 
} 
0
lblNoContacts.Visible = (flowLayoutPanel.Controls.Count == 0) ? true : false; 
+0

Qu'est-ce que la réponse fournissent acceptée ne fonctionne pas? –

+0

Essentiellement rien, il fait exactement la même chose - juste une autre façon de l'écrire :) – Chriz