In WPF möchte ich ein Fenster erstellen, das wie das folgende aussieht:
Anwendung mit Benutzerkontrollen http://www.freeimagehosting.net/uploads/86209e1a87.png
Auf dem Bildschirm befinden sich vier Benutzerkontrollen, #1, 2, 3, 4. Wie Sie sehen können, sollte die Benutzerkontrolle 2 nicht als Box, sondern als Inline gerendert werden.
Wenn dies ein WPF-Flow-Dokument wäre:
- 1, 3, 4 wären ein Absatz (Boxen)
- 2 ein Lauf (Inlining)
Der Grund dafür ist, dass 2 in einer anderen Form verwendet werden könnte, ohne dass es zu einer Aufspaltung in 3 kommt.
Haben Sie eine Idee, wie man das richtig macht?
Eine Idee, an die ich schon gedacht habe:
- 2 ist eine gewöhnliche Benutzerkontrolle (Boxen). Wenn im Fenster platziert, 2, 3, 4 werden in einem Canvas platziert, wobei Z-Ordnung und Randtonnensteuerung wie sie gerendert werden
- 2 hat ein Raster, das bereits so formatiert ist, dass es 3 und 4 darin als ContentControl aufnehmen kann, und wir injizieren sie über Xaml oder Code dahinter
- 2 stellt das Hauptgitter als Eigenschaft dar, und über die Eigenschaft Attached Goodness fügen wir die Daten für 3 und 4 hinzu
- Wir erstellen unser eigenes Layout-Steuerelement und implementieren die Methoden Arrange und Measure, um ein Layout zu erstellen, das sich wie ein Run
Und einige andere, die nicht so sauber sind...
Haben Sie eine Idee?
Danke,
Patrick