Gast
#1615196
Hallo, ich erstelle gerade ein C#-Programm (mit WinForms; VS2008), das stark vergleichbar mit Visio ist (grafische Ausgabe von Kasten und Linien; Zeichnen von Blockdiagrammen; siehe Bildanhang). Da meine Kasten etwas komplexer sein sollen, als nur ein gemaltes Rechteck mit 2 Wörtern Text drin, würde ich hierfür gerne ein Usercontrol zusammenbasteln. Wie kann ich jetzt diese Usercontrol selektieren, zoomen, usw.? Für selbstgezeichnete "Dinge" (Verbindungslinien usw.), die ich per DrawLine, DrawRect direkt auf die Zeichenfläche gemalt habe, sollte eine Selektion (bzw. die Erkennung, ob ich auf das Objekt geklickt habe) mittels "IsOutlineVisible/IsVisible" möglich sein. Soviel weiss ich aus der Theorie. Mittels GraphicsPath und passenden Transformationen, kann ich meine Zeichnungen selbst skalieren, rotieren usw. Soweit theoretisch auch kein Problem. Wie skaliere, selektiere, rotiere ich aber "fertige" bzw. selbst erstelle UserControls? Hier gibt es ja keine UserControl.IsVisible-Methode o.ä.? Ist es üblich, dass man bei solchen Visio-like-Programmen zusätzlich zu den eigenen "Malereien" auch noch fertige UserControls einsetzt? (Der Klassendesigner in VisualStudio ist eigentlich ähnlich und ich vermute, dass die Klassenkästchen auch ein UserControl sind, das sich aber zoomen läßt usw...). Unter welchem Stichwort finde ich hier Beschreibungen zu dem Thema? (Die Webcasts von Microsoft zum Thema GDI+ kenne ich schon - dort wird das nicht behandelt. :-( ). Danke, Jürgen
