Laden...

Code aufteilen

Erstellt von flyAway vor 14 Jahren Letzter Beitrag vor 14 Jahren 2.004 Views
F
flyAway Themenstarter:in
269 Beiträge seit 2004
vor 14 Jahren
Code aufteilen

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

925 Beiträge seit 2004
vor 14 Jahren

Du kannst den Inhalt der Docks jeweils als eigenständiges UserControl anlegen.

821 Beiträge seit 2009
vor 14 Jahren

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.

446 Beiträge seit 2004
vor 14 Jahren

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:

http://msdn.microsoft.com/de-de/magazine/cc785479.aspx

Schaut mal im IRC vorbei:
Server: https://libera.chat/ ##chsarp

F
flyAway Themenstarter:in
269 Beiträge seit 2004
vor 14 Jahren

Danke schön für eure Antworten. Werde mich gleich an die Arbeit machen.

F
flyAway Themenstarter:in
269 Beiträge seit 2004
vor 14 Jahren

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?