API: Layout Controls

API-Referenz für Container und Layout-Management.

TWvdSLayoutControl

Automatisches Formular-Layout.

Namespace

WvdS.UI.Controls.Layout

PXAML

<LayoutControl>
  <LayoutGroup Header="Personal Data">
    <LayoutItem Label="Name:">
      <TextEdit Text="{Binding Name}" />
    </LayoutItem>
    <LayoutItem Label="Email:">
      <TextEdit Text="{Binding Email}" />
    </LayoutItem>
  </LayoutGroup>
  <LayoutGroup Header="Address" IsCollapsible="True">
    <LayoutItem Label="Street:">
      <TextEdit Text="{Binding Street}" />
    </LayoutItem>
    <LayoutItem Label="City:">
      <TextEdit Text="{Binding City}" />
    </LayoutItem>
  </LayoutGroup>
</LayoutControl>

Properties

Property Typ Default Beschreibung
Items TLayoutItemCollection nil Layout-Elemente
LabelPosition TLabelPosition lpLeft Left, Top
LabelWidth Integer 100 Beschriftungsbreite
ItemSpacing Integer 5 Abstand zwischen Items
GroupSpacing Integer 10 Abstand zwischen Gruppen

TWvdSLayoutGroup

Property Typ Beschreibung
Header string Gruppenüberschrift
IsCollapsible Boolean Einklappbar
IsCollapsed Boolean Eingeklappt
Items TLayoutItemCollection Unterelemente

TWvdSLayoutItem

Property Typ Beschreibung
Label string Beschriftung
Control TWvdSFrameworkElement Enthaltenes Control
ColSpan Integer Spaltenspanne
RowSpan Integer Zeilenspanne

TWvdSDockingManager

Docking-System für flexible Fensteranordnung.

Namespace

WvdS.UI.Controls.Layout

PXAML

<DockingManager>
  <DockPanel Name="Explorer" Position="Left" Width="200">
    <FileExplorer />
  </DockPanel>
  <DockPanel Name="Properties" Position="Right" Width="250">
    <PropertyGrid />
  </DockPanel>
  <DockPanel Name="Output" Position="Bottom" Height="150">
    <OutputLog />
  </DockPanel>
  <DocumentHost>
    <Document Title="MainWindow.pxaml">
      <CodeEditor />
    </Document>
  </DocumentHost>
</DockingManager>

Properties

Property Typ Default Beschreibung
Panels TDockPanelCollection nil Dock-Panels
DocumentHost TDocumentHost nil Dokumentbereich
Theme TDockingTheme dtDefault Theme
AllowFloating Boolean True Floating erlaubt
AllowAutoHide Boolean True Auto-Hide erlaubt

Events

Event Signatur Beschreibung
OnPanelDocked TPanelEvent Panel angedockt
OnPanelFloating TPanelEvent Panel schwebt
OnPanelClosing TPanelClosingEvent Panel wird geschlossen

TWvdSSplitContainer

Geteilter Container.

Namespace

WvdS.UI.Controls.Layout

PXAML

<SplitContainer Orientation="Horizontal"
                SplitterPosition="0.3">
  <SplitContainer.Panel1>
    <TreeView ItemsSource="{Binding Folders}" />
  </SplitContainer.Panel1>
  <SplitContainer.Panel2>
    <ListView ItemsSource="{Binding Files}" />
  </SplitContainer.Panel2>
</SplitContainer>

Properties

Property Typ Default Beschreibung
Orientation TWvdSOrientation oHorizontal Teilungsrichtung
SplitterPosition Double 0.5 Position (0-1)
SplitterWidth Integer 5 Splitter-Breite
Panel1 TWvdSFrameworkElement nil Linkes/oberes Panel
Panel2 TWvdSFrameworkElement nil Rechtes/unteres Panel
Panel1MinSize Integer 50 Minimum Panel1
Panel2MinSize Integer 50 Minimum Panel2
IsSplitterFixed Boolean False Splitter fixiert

TWvdSGroupControl

Gruppen-Container mit Rahmen.

Namespace

WvdS.UI.Controls.Layout

PXAML

<GroupControl Header="Options">
  <StackPanel>
    <CheckBox Content="Option 1" />
    <CheckBox Content="Option 2" />
  </StackPanel>
</GroupControl>

Properties

Property Typ Default Beschreibung
Header string | Überschrift | ^ Content | TWvdSFrameworkElement | nil | Inhalt | ^ BorderStyle | TBorderStyle | bsSingle | None, Single, Double | —- ===== TWvdSXtraScrollBox ===== Scroll-Container. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <XtraScrollBox HorizontalScrollBarVisibility=„Auto“ VerticalScrollBarVisibility=„Always“> <StackPanel> <!– Viele Controls –> </StackPanel> </XtraScrollBox> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ Content | TWvdSFrameworkElement | nil | Inhalt | ^ HorizontalScrollBarVisibility | TScrollBarVisibility | svAuto | Hidden, Auto, Visible | ^ VerticalScrollBarVisibility | TScrollBarVisibility | svAuto | Hidden, Auto, Visible | ^ HorizontalOffset | Double | 0 | H-Scroll-Position | ^ VerticalOffset | Double | 0 | V-Scroll-Position | —- ===== TWvdSFlowLayoutPanel ===== Fließendes Layout. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <FlowLayoutPanel FlowDirection=„LeftToRight“ WrapContents=„True“ ItemSpacing=„10“> <Button Caption=„Button 1“ /> <Button Caption=„Button 2“ /> <Button Caption=„Button 3“ /> </FlowLayoutPanel> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ FlowDirection | TFlowDirection | fdLeftToRight | LeftToRight, TopDown, RightToLeft, BottomUp | ^ WrapContents | Boolean | True | Umbrechen | ^ ItemSpacing | Integer | 5 | Abstand | —- ===== TWvdSTableLayoutPanel ===== Tabellen-basiertes Layout. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <TableLayoutPanel Columns=„Auto,*,100“ Rows=„Auto,*“> <Label Text=„Name:“ Row=„0“ Column=„0“ /> <TextEdit Row=„0“ Column=„1“ ColumnSpan=„2“ /> <Label Text=„Notes:“ Row=„1“ Column=„0“ /> <MemoEdit Row=„1“ Column=„1“ ColumnSpan=„2“ /> </TableLayoutPanel> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ Columns | string | Spalten-Definition
Rows string | Zeilen-Definition | ^ CellSpacing | Integer | 0 | Zellenabstand | ==== Spalten/Zeilen-Syntax ==== | Wert | Bedeutung | ^ Auto | Automatische Größe | ^ * | Verfügbaren Platz füllen | ^ 100 | Feste Größe (Pixel) | ^ 2* | Doppelte Proportion | —- ===== TWvdSPopupContainer ===== Popup-Container für benutzerdefinierte Popups. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <PopupContainer IsOpen=„{Binding ShowPopup}“ PlacementTarget=„{Binding ElementName=targetButton}“ Placement=„Bottom“> <Border Background=„White“ Padding=„10“> <StackPanel> <Label Text=„Popup Content“ /> <Button Caption=„Close“ Command=„{Binding ClosePopup}“ /> </StackPanel> </Border> </PopupContainer> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ IsOpen | Boolean | False | Popup sichtbar | ^ Content | TWvdSFrameworkElement | nil | Inhalt | ^ PlacementTarget | TWvdSFrameworkElement | nil | Ziel-Element | ^ Placement | TPopupPlacement | ppBottom | Bottom, Top, Left, Right, Center | ^ HorizontalOffset | Double | 0 | H-Versatz | ^ VerticalOffset | Double | 0 | V-Versatz | —- ===== TWvdSCardControl ===== Card-basierter Container. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <CardControl> <Card Header=„Card 1“> <Content1 /> </Card> <Card Header=„Card 2“> <Content2 /> </Card> </CardControl> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ Cards | TCardCollection | nil | Karten | ^ SelectedCard | TCard | nil | Ausgewählte Karte | ^ CardSpacing | Integer | 10 | Abstand | —- ===== TWvdSCollapsibleGroup ===== Einklappbare Gruppe. ==== Namespace ==== WvdS.UI.Controls.Layout ==== PXAML ==== <code xml> <CollapsibleGroup Header=„Advanced Options“ IsExpanded=„False“> <StackPanel> <CheckBox Content=„Enable feature X“ /> <SpinEdit Value=„100“ /> </StackPanel> </CollapsibleGroup> </code> ==== Properties ==== | Property | Typ | Default | Beschreibung | ^ Header | string | Überschrift
Content TWvdSFrameworkElement nil Inhalt
IsExpanded Boolean True Ausgeklappt
CollapseAnimation Boolean True Animation

Events

Event Signatur Beschreibung
OnExpanded TNotifyEvent Ausgeklappt
OnCollapsed TNotifyEvent Eingeklappt

Siehe auch

Zuletzt geändert: den 29.01.2026 um 15:13