Entwickler-Ecke

WinForms - Bewegen von zur Laufzeit erstellten Objekten


bd.cole - Di 21.08.07 07:20
Titel: Bewegen von zur Laufzeit erstellten Objekten
Hallo, ich erstelle zur Laufzeit mehrere Listviews. Das heißt die Listviews haben keine bestimmten Namen mit denen ich sie später ansprechen kann. Jetzt würd ich gern die erstellten views mit meiner maus verschieben können. Aber ich verstehe nicht, wie das geht, wenn ich nicht direkt ListView2.Location oder so machen kann. Einer eine Idee? Kann ich vielleicht die Views auch beim erstellen schon Irgendwie eindeutig machen? Hier mien Code zum erstellen:

C#-Quelltext
1:
2:
3:
ListView lstView = new ListView();
            // Eigenschaften von 'lstView'
panel1.Controls.Add(lstView);


Danke für die Hilfe


Kha - Di 21.08.07 10:25

Für das Umherziehen fängst du doch sicher das MouseDown-Event o.ä. ab. Dann findest du im Parameter sender das angeklickte Control, du musst es nur noch auf ListView casten. Am Elegantesten per as-Operator:

C#-Quelltext
1:
2:
3:
ListView listView = sender as ListView;
if (listView != null)
  ... // sender ist eine ListView