Dynamischer Zugriff auf Windows Forms-Steuerelemente nach Namen
Bei der Verwendung dynamisch generierter Steuerelemente in Windows Forms kann es schwierig sein, programmgesteuert über ihre dynamisch zugewiesenen Namen darauf zuzugreifen. Dies ist erforderlich, wenn auf Menüelemente verwiesen wird, die aus XML-Dateien erstellt wurden.
Frage:
Wie greifen wir über den Namen auf das ToolStripMenuItem zu, obwohl es dynamisch generiert wird?
Stellen Sie sich die folgende Situation vor:
<code>// 常规方法(对于动态生成的控件不可行) ToolStripMenuItem myMenu = this.myMenu; // 期望方法(可以通过名称引用控件) string name = myMenu; this.name...</code>
Lösung:
Der Schlüssel zum dynamischen Zugriff auf Steuerelemente liegt in der Verwendung der Control.ControlCollection.Find-Methode. Mit dieser Methode können wir anhand seines Namens nach einem Steuerelement in der Steuerelementsammlung suchen.
Um über den Namen auf ein ToolStripMenuItem zuzugreifen, können Sie den folgenden Code verwenden:
<code>this.Controls.Find(name);</code>
Dadurch wird ein Array von Steuerelementen zurückgegeben, die dem angegebenen Namen entsprechen. Anschließend können Sie auf das erste Steuerelement im Array zugreifen, um auf das Menüelement zu verweisen.
Zum Beispiel:
<code>ToolStripMenuItem myMenu = (ToolStripMenuItem)this.Controls.Find(name)[0];</code>
Mit dieser Methode können Sie Menüelemente dynamisch nach Namen referenzieren, auch wenn sie zur Laufzeit erstellt werden.
Das obige ist der detaillierte Inhalt vonWie greife ich nach Namen auf dynamisch generierte Windows Forms-Steuerelemente zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!