Laden...

Separator : Control wie GridSpliter verwenden

Erstellt von gabischatz vor 2 Jahren Letzter Beitrag vor 2 Jahren 313 Views
G
gabischatz Themenstarter:in
29 Beiträge seit 2022
vor 2 Jahren
Separator : Control wie GridSpliter verwenden

Hallo wie kann ich das Separator : Control dockSeparator wie ein GridSpliter verwenden?
Grüße


<Window x:Name="KiCadViewer"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        Title="KiCad Footprint Viewer" 
        Height="450" 
        Width="800" 
        ResizeMode="CanResizeWithGrip" 
        Cursor="AppStarting">

    <DockPanel LastChildFill="True">        
        <!--Dock = "Top"-->
        <ToolBarPanel DockPanel.Dock="Top" Background="LightGray" Height="33" >
        </ToolBarPanel>
        
        <!--Dock = "Bottom"-->
        <StatusBar DockPanel.Dock="Bottom" Background="Beige" Height="33" >

            <Border Margin="4,0,0,0" Height="20" Width="194" 
                    BorderBrush="Black" BorderThickness="0">
                <ProgressBar x:Name="statusL" Background="Snow" />
            </Border>
            <StatusBarItem>
                        <TextBlock>Number of Fils:</TextBlock>
            </StatusBarItem>
            <StatusBarItem>
                <TextBlock x:Name="labelFileCount" >0</TextBlock>
            </StatusBarItem>

            <Separator Margin="4" />
            
            <StatusBarItem Margin="5,0,0,0" >
                <TextBlock>Directory:</TextBlock>
            </StatusBarItem>
            <!-- File Pfath -->
            <StatusBarItem HorizontalContentAlignment="Left" Width="auto" >
                <TextBlock x:Name="labelPath" Cursor="Hand" Width="200" ></TextBlock>
            </StatusBarItem>

            <Separator Margin="4" />

            <StatusBarItem>
                <Button HorizontalAlignment="Right"  Content="Cancel"/>
            </StatusBarItem>
            <StatusBarItem>
                <Button HorizontalAlignment="Right"  Content="Cancel"/>
            </StatusBarItem>
            <StatusBarItem>
                <Button HorizontalAlignment="Right"  Content="Cancel"/>
            </StatusBarItem>
            <StatusBarItem>
                <Button HorizontalAlignment="Right"  Content="Cancel"/>
            </StatusBarItem>
        </StatusBar>
        
        <!--Body left-->
        <Border x:Name="listContainer" DockPanel.Dock="Left"  Width="200"  >
            <ListView x:Name="liste" Margin="6,6,0,6" Background="Honeydew" />
        </Border>
        <!--Separator-->
        <Separator x:Name="dockSeparator" DockPanel.Dock="Left" Width="5" Height="80" Background="LightGray"/>
        <!--Body right-->
        <Border x:Name="canvasContainer" DockPanel.Dock="Left"  Margin="0,6,6,6" BorderBrush="Gray" BorderThickness="0.5">
            <Canvas x:Name="canvasViewer"  Background="#11111111"/> 
        </Border>
    </DockPanel>       
</Window>

2.079 Beiträge seit 2012
vor 2 Jahren

Ich muss gestehen, ich kannte das StatusBar-Control bisher nicht und hab's bisher auch nie gebraucht.
Was spricht dagegen, dass Du stattdessen einfach ein Grid nutzt und passend gestaltest?
Dann kannst Du auch den GridSplitter nutzen.

NuGet Packages im Code auslesen
lock Alternative für async/await

Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.

4.939 Beiträge seit 2008
vor 2 Jahren

@Palladin007: Das hat jetzt mit der StatusBar nichts zu tun, es geht ja um die letzten 3 im XAML definierten Controls.
Aber du hast Recht damit, hier einfach ein Grid zu benutzen und dort dann ein GridSplitter einzusetzen, s.a. Der GridSplitter.

G
gabischatz Themenstarter:in
29 Beiträge seit 2022
vor 2 Jahren

Danke für eure Antwort, ich werde das Grid verwenden.