Ich habe ein problem mit dem Contextmenü bei Labels.
Ich lasse die Labels dynamisch erstellen und möchte für jeden ein Contextmenü aufrufen lassen. Dieses soll über die Rechte Maustaste aufgerufen werden. Das funktioniert auch soweit. Nur das, dass Contextmenü immer bei dem ersten Label, das erstellt wird, angezeigt wird, obwohl ich mit der Maus auf einen anderen Label stehe.
hier der Code ausschnitt:
Es wäre nett wenn sich das einer von euch mal anschauen würde.
Gruß Jack84
Ich lasse die Labels dynamisch erstellen und möchte für jeden ein Contextmenü aufrufen lassen. Dieses soll über die Rechte Maustaste aufgerufen werden. Das funktioniert auch soweit. Nur das, dass Contextmenü immer bei dem ersten Label, das erstellt wird, angezeigt wird, obwohl ich mit der Maus auf einen anderen Label stehe.
hier der Code ausschnitt:
Code:
private void label_erstellen_server(int left, int top, int umbruch, int abstand, int anzahl, string[] text,Panel panel)
{
for (int i = 0; i < anzahl; i++)
{
int test = 0;
if ((((abstand * anzahl) + top) > umbruch))
{
if (test == 0)
{
left += 200;
top = 5;
abstand = 22;
}
test = 1;
}
Label l = DynForm.createLabel();
l.MouseDown += new System.Windows.Forms.MouseEventHandler(label_MouseDown);
l.Left = left;
l.Width = 180;
l.Top = top;
l.Text = text[i];
top += abstand;
panel.Controls.Add(l);
}
}
private void label_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
// abfrage ob rechte maustaste gedrueckt wurde
if (e.Button == MouseButtons.Right)
{
Point p = new Point(e.X, e.Y);
// laesst das contextmenu aufpoppen
this.contextMenuStrip1.Show(panel2,p);
}
}
Es wäre nett wenn sich das einer von euch mal anschauen würde.
Gruß Jack84