Hallo,
wie teilt man bei einem WPF den Code auf?
Wenn ich AvalonDock als Alternative zu mdi-Fenstern verwende, hab ich ja den ganzen Design- und Programmcode in jeweils einer Datei.
Wie mache ich das, dass jedes Panel seine eigene Datei bekommt?
Wird ja sonst mehr als unübersichtilich.
Kennt vieleicht auch jemand ein paar Seiten mit Beispielen, ausser denen die bei AvalonDock selbst?
Danke für eure Hilfe
Du kannst den Inhalt der Docks jeweils als eigenständiges UserControl anlegen.
Da gibts ne Menge möglichkeiten.
Generell musst du ja nur die Dialoge, die du seperat erstellst bzw. vielleicht schon vorrätig hast in die Content-Property des Avalaon-Elementes (DocableContent wenn ich mich nicht irre) reinladen.
Dies würde ich gar nicht im Designer machen, sondern einfach über einen Controller realisieren, welcher die Inhalte des Avalon-Docks verwaltet.
Die einfachste Möglichkeit um es statisch im Designer zu machen ist (wie 7.e.Q erwähnt hat) die Auslagerung in UserControls.
Hallo,
mit patterns & practices wird ein Regionmanager mit geliefert, mit dem du die UserControls ein / ausblenden kannst. Je nach bedarf.
Ein Artikel dazu findest du hier:
Schaut mal im IRC vorbei:
Server: https://libera.chat/ ##chsarp
Hab MicrosoftPracticesProjectLinkerFeb2009.msi installiert, aber die Beispiele funktionieren nicht. Bekomme immer die Fehlermeldung:
Fehler 1 Der RegionManager-Typ enthält keine anfügbare RegionName-Eigenschaft. D:\Knowledge Base\C#\Composite Application Guidance\Quickstarts\Hello World\HelloWorld.Desktop\HelloWorld.Desktop\Shell.xaml 6 37 HelloWorld.Desktop
Shell.xaml schaut so aus:
<Window x:Class="HelloWorld.Shell"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:cal="http://www.codeplex.com/CompositeWPF"
Title="Hello World" Height="300" Width="300">
<ItemsControl Name="MainRegion" cal:RegionManager.RegionName="MainRegion" />
</Window>
und der Fehler betrifft:
cal:RegionManager.RegionName
Hab ich was übersehen?