WPF: Dockpanel soll den unteren Bereich ausfüllen



  • Hallo Forum,

    sagen wir es gibt ein Datenbank Item das per WPF Form dargstellt werden soll. Im oberen Bereich der Form sollen die allgemeinen Informationen die meiste obligatorisch sind dargestellt werden. Im unterem Bereich der Form sollen zusätzliche Informationen angezeigt werden. Diese sind manchmal nicht vorhanden und manchmal ganze Textromane. Deshalb ist der obere Bereich der Form mit fester Größe und der untere Bereich soll die Darstellfläche (das Textfeld mit den Romanen) vergrößern wenn der User das Fenster groß zieht. Wie kann man das mit WPF machen?

    Ich dachte an ein Dockpanal das den gesamten unteren Bereich der Form ausfüllt und mit LastChildFill=True den Platz an das Textfeld weiter gibt. Das Dockpanel nimmt jedoch nicht den gesamten unteren Bereich der Form ein.

    <Window x:Class="WpfApplication2.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MainWindow" Height="517.855" >
        <Grid>
            <DockPanel HorizontalAlignment="Left" LastChildFill="True" Margin="10,10,0,0" VerticalAlignment="Top">
                <!-- Die DB Informationen die einen festen Platz einnehmen -->
                <StackPanel VerticalAlignment="Top" DockPanel.Dock="top" >
                    <Border BorderBrush="Black" BorderThickness="1" HorizontalAlignment="Left" Height="200" Margin="4" Width="400"/>
                </StackPanel>
    
                <!-- Die DB Informationen die manchmal umfangreich sind. Der User soll diesen Bereich vergrößern wenn er das MainWindow vergrößert. -->
                <DockPanel  DockPanel.Dock="Bottom" LastChildFill="True" >
                    <Border BorderBrush="Black" BorderThickness="1" HorizontalAlignment="Left" Margin="4"/>
                </DockPanel>
            </DockPanel>
        </Grid>
    </Window>
    


  • Lass mal bei beiden DockPanels das Horizontal-/VerticalAlignment weg.



  • Es klappt. Hab vielen Dank 🙂


Anmelden zum Antworten