Guten Tag.
Ich möchte ein richtig dynamisches Kontextmenü erstellen, aber ich habe bisher nur in etwa folgende Form gefunden:
Ich kann mit dieser Methode nur eine beim programmieren festgelegte Anzahl von menuitems erstellen (private void mItest1_Click, private void mItest2_Click, private void mItest3_Click ... )
Ich möchte nun aber die Anzahl dynamisch halten.
Kann mir da einer weiterhelfen ?
// Editiert durch Alex S.
Ich war so frei und hab Code-Tags gesetzt.
Ich möchte ein richtig dynamisches Kontextmenü erstellen, aber ich habe bisher nur in etwa folgende Form gefunden:
Code:
private void menuItem2_Click(object Sender, EventArgs e)
{
string[] menunames = new string[]{"test1","test2"};
for (int i=0; i<menunames.Length;i++)
{
//MenuItem X
this.menuItem3 = new System.Windows.Forms.MenuItem();
this.menuItem3.Index = i;
this.menuItem3.Text = menunames[i];
if(menunames[i]=="test1")
{
this.menuItem3.Click += new System.EventHandler(this.mItest1_Click);
}
else if(menunames[i]=="test2")
{
this.menuItem3.Click += new System.EventHandler(this.mItest2_Click);
}
// Initialize menuItemX
this.contextMenu1.MenuItems.AddRange(
new System.Windows.Forms.MenuItem[] {this.menuItem3});
}
}
//hier wird die Aktion festgelegt, welche ausgeführt werden soll.
private void mItest1_Click(object Sender, EventArgs e)
{
MessageBox.Show("mItest1");
}
private void mItest2_Click(object Sender, EventArgs e)
{
MessageBox.Show("mItest2");
}
Ich kann mit dieser Methode nur eine beim programmieren festgelegte Anzahl von menuitems erstellen (private void mItest1_Click, private void mItest2_Click, private void mItest3_Click ... )
Ich möchte nun aber die Anzahl dynamisch halten.
Kann mir da einer weiterhelfen ?
// Editiert durch Alex S.
Ich war so frei und hab Code-Tags gesetzt.
Zuletzt bearbeitet von einem Moderator: