如何在WPF中获得可调节的"帧"?

Dou*_*oug 3 c# wpf user-interface

我知道在将窗口划分为单独的部分(例如,DockPanel,StackPanel等)时,我有几个选项可供使用.我的Windows应用程序要求用户能够在运行时调整不同部分的大小,类似于用户在HTML中调整FRAME宽度的方式.有没有人建议在C#WPF中使用什么类型的控件来实现这一点?如果你有任何代码可以说明用户如何鼠标悬停在一个区域边界上并点击按住来调整大小,那将是理想的.

Eri*_*ang 5

System.Windows.Controls.GridSplitter

http://msdn.microsoft.com/en-us/library/system.windows.controls.gridsplitter.aspx

例:

<Grid VerticalAlignment="Stretch">
    <Grid.RowDefinitions>
        <RowDefinition Height="50" />
        <RowDefinition Height="5" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <ListBox Grid.Row="0" >
        <TextBlock>Hello</TextBlock>
    </ListBox>

    <GridSplitter Grid.Row="1" 
         Height="5" Background="Gray" 
         VerticalAlignment="Top" 
         HorizontalAlignment="Stretch" />

    <ListBox Grid.Row="2" >
        <TextBlock>World</TextBlock>            
    </ListBox>
</Grid>
Run Code Online (Sandbox Code Playgroud)