Huhu,
die exestiernden Threads ueber die Find Methode oder Iretation durch Controls
funktioniert nicht, Controls werden zwar gefunden, allerdings scheinbar
immer nur der Type des Controls, in meinem fall eine Textbox.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42:
| private void txtbox_enter(object sender, EventArgs e) { Control[] c = this.pan_3dgstut.Controls.Find("Script_1_1",false); for (int i = 0; i < c.Length; i++) { if (c[i] is RichTextBox && c != null && c.length != 0) { if (DE) toolStripStatusLabel2.Text = "..."; if (ENG) toolStripStatusLabel2.Text = "..."; } } }
private Control FindControl(Control container, string name) { if (container.Name == name) return container; foreach (Control ctrl in container.Controls) { Control foundCtrl = FindControl(ctrl, name); if (foundCtrl != null) return foundCtrl; } return null; } private void txtbox_enter(object sender, EventArgs e) { Control c = FindControl(pan_3dgstut, "Script_1_1");
if (c is RichTextBox) { if (DE) toolStripStatusLabel2.Text = "..."; if (ENG) toolStripStatusLabel2.Text = "..."; } } |
Ich hab auch ohne Find getestet, ich bekomme immer das selbe Ergebnis,
so dass beim Eintritt der Maus ins Control scheinbar der Name ignoriert wird.
Alle Namen sind unterschiedlich.
Wo könnte der Fehler liegen?
EDIT: Mir faellt gerade noch das Problem der Events ein.
Ich versuch das mal per sender oder per Event aufzuspalten.
Nein, geht auch nicht.Am besten waere es mit Find und einer Methode
fuer alle Boxen.
EDIT: Problem gelöst mit unterschiedlichen Events(ohne Abfrage der Controls...)
Komisch finde ich nur, dass das vorher nicht ging, wenn ich rausfinde, warum
poste ich es hier.