Entwickler-Ecke
WPF / Silverlight - Page, Window oder UserControl - oder etwas anderes ?
funcry - Do 06.08.09 15:10
Titel: Page, Window oder UserControl - oder etwas anderes ?
Es geht mir mit der Frage vorallem um sauberes Design.
Meine Anwendung besteht aus einem Window mit TabControl. Dort werden dynamisch TabItems eingebunden. Die TabItems enthalten ein Paar Steuerelemente. Daher habe ich derzeit entweder eine Page, ein UserControl oder ein Window definiert, welches ein TabControl mit TabItem und den Steuerelementen enthält.
In anderen Worten:
Ich habe ein (Main-) Window mit TabControl.
Jetzt erstelle ich ein von mir erstelltes UserControl, Page oder Window welches ein TabControl mit einem TabItem und ein paar Steuerlementen enthält.
Dieses TabItem schnappe ich mir und füge es meinem TabControl im Main-Window hinzu.
Jetzt bin ich am Überlegen und frage, welche Technik ist die dafür vorgesehene ?
Funktionieren tut es sowohl mit einer Page, einem Window (mit Einschränkungen) sowie einem UserControl.
Kha - Do 06.08.09 18:13
Du erzeugst also ein Window/Page, nur um daraus ein TabItem herauszureißen und in das "echte" TabControl einzufügen? Bin mir jetzt nicht sicher, was du damit erreichen willst :gruebel: .
Der richtige Weg geht jedenfalls über ein DataTemplate, das die Elemente entweder direkt oder gekapselt in einem UserControl enthält.
funcry - Do 06.08.09 20:55
Danke für die Antwort!
Der Grund warum ich das brauche ist, auf den TabItems finden teils sehr lange Berechnungen statt, eine Tabelle ist drauf, Diagramme können angezeigt werden etc . .Und wenn es dem Anwender passt macht er sich ein neues TabItem mit neuen Einstellungen und kann dort neue Berechnungen durchführen. Zudem kann am Ende der Berechnungen das TabItem selbst ein neues TabItem erzeugen mit geänderten Einstellungen und automatisch mit neuen Berechnungen fortfahren. Allerdings ist der Code-Behind dieser TabItems auch relativ umfangreich - im Prinzip sind 90% der Anwendung dort drauf, inklusive der eingebundenen Klassen und Funktionen. Zudem ruft das TabItem bei Bedarf neue Windows auf. Funktioniert soweit wie geplant. In früheren Versionen habe ich mit MDI-Fenstern gearbeitet, was aber weniger elegant war meiner Meinung nach.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!