Hallo,
und zwar wollte ich mal fragen ob es eventuell eine Funktion gibt mit Hilfe derer es möglich ist ein Control innerhalb einer Form zu finden.
So etwas wie: Label lblTest = (Label)FindControl("testLabel");
Wissen ist nicht alles. Man muss es auch anwenden können.
PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager |
Hallo inflames2k,
sowas gibt es. Da solltest du die :rtfm: Doku fragen. Nicht ganz so, wie du vermutest, aber du bist dicht dran.
herbivore
Falls du Controls.Find(Key, bool) meinst. ... Damit hab ich es probiert, Sinn und Zweck ist, dass ich dynamisch erstellte Controls neu ausrichten möchte.
Dies möchte ich wenn möglich ganz einfach machen...
Control per Namen suchen, Beispielsweise ein Label - lblTest.
probiert hab ich es folgendermaßen:
Control[] controls = this.Controls.Find(controlname, true);
Label TestLabel = (Label)controls[0];
Dies bringt jedoch eine IndexOutOfBound-Exception obwohl das Label existieren sollte, nachdem ich gesucht habe.
Wissen ist nicht alles. Man muss es auch anwenden können.
PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager |
Dann hast Du wohl deinem Control vorm Hinzufügen zu deinem Fenster keinen korrekten Namen gegeben, über den Du es später in der Control-Collection finden kannst.
Label testControl = new Label();
testControl.Text = "Woohoo";
testControl.Name = "testName";
Controls.Add(testControl);
Control[] controls = Controls.Find("testName", true);
if (controls != null && controls.Length > 0)
{
controls[0].Text = "Test yay";
}
else
{
MessageBox.Show("Control not found");
}
Das Control hat einen Festen Namen. 😃 Über foreach findet man es auch. - Naja egal, bleib ich dann bei meinem Foreach.
Wissen ist nicht alles. Man muss es auch anwenden können.
PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager |