【发布时间】:2017-08-27 02:13:55
【问题描述】:
我正在尝试订购一个 WPF 表单以按此顺序停靠
- 菜单条
- 工具栏
- 选项卡控件
- 状态栏
如您所见,状态栏位于底部,菜单条位于顶部,然后是工具栏和选项卡控件。通常你可以停靠到用 WinForms 填充,但它非常复杂,当涉及到在 WPF 中执行它时我不太了解它,我想知道是否有人可以帮助我?
我已经让它们全部正确停靠,并水平伸展,但垂直有点混乱,因为 StatusBar 的高度非常高,而 tabControl 的高度有点低,我是如何做到的,WinForms 是如何做到的是吗?
<Window x:Class="Proxy_Scraper.MainWindow"
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"
xmlns:local="clr-namespace:Proxy_Scraper"
mc:Ignorable="d"
Title="MainWindow" Height="377.5" Width="811.578">
<Grid>
<DockPanel>
<Menu DockPanel.Dock="Top" HorizontalAlignment="Stretch">
<MenuItem Header="MenuItem" Height="100" Width="100"/>
</Menu>
<ToolBar DockPanel.Dock="Top" HorizontalAlignment="Stretch"/>
<TabControl DockPanel.Dock="Top" HorizontalAlignment="Stretch" VerticalAlignment="Center">
<TabItem Header="TabItem">
<Grid Background="#FFE5E5E5"/>
</TabItem>
<TabItem Header="TabItem">
<Grid Background="#FFE5E5E5"/>
</TabItem>
</TabControl>
<StatusBar DockPanel.Dock="Bottom" HorizontalAlignment="Stretch">
<StatusBarItem>
<TextBlock>fff</TextBlock>
</StatusBarItem>
</StatusBar>
</DockPanel>
</Grid>
</Window>
【问题讨论】:
-
您可以使用
Grid插入行。例如:菜单项为 25,工具栏为 50,Tab 控件为 *,状态栏为 25。或全部为自动,TabControl 为 *