zugriff auf Tags aller Componenten im Form



  • Hallo,
    wie kann ich in C# auf die Tags aller Componenten einer Form zugreifen? Die Componenten (Labels, Buttons, Menüs, ...) sollen abhängig dem Inhalt ihrer Tags manipuliert werden.

    Vorab Danke für die Hilfe

    Jürgen Reber



  • über Controls Auflistung:

    private void button1_Click(object sender, System.EventArgs e)
    		{
    			foreach (Control c in this.Controls)
    				if (c is Label) ((Label)c).Text = "gefunden";
    		}
    


  • Danke für die Hilfe!

    allerdings habe ich noch folgendes Problem:
    wenn z.B. die Labels auf einem Panel (oder in einer Groupbox,..) liegen werden sie nicht bearbeitet. Ich habe dann folgenden Code eingebaut:

    foreach (Control c in panel1.Controls)
    {
       if (c is Label)
       {
          ((Label)c).Text = "gefunden";
       }
    }
    

    muss ich das jetzt entsprechend für jeden Container tun, oder gibt einen eleganteren Weg?

    Gruss

    Jürgen



  • private void button1_Click(object sender, System.EventArgs e)
    {
    	ReversQuery(this);
    }
    
    private void ReversQuery(Control Contr)
    {
    	foreach (Control c in Contr.Controls)
    	{
    		if (c is Label) ((Label)c).Text = "gefunden";
    		else
    			ReversQuery(c);
    	}
    }
    


  • Tolle Sache!

    Vielen Dank!!

    Jürgen


Anmelden zum Antworten