[英]WPF DockPanel with Toolbar and Statusbar
我正在學習WPF,並且我正在嘗試使用一個由頂部的工具欄組成的表單,底部的狀態欄以及其余將由用於數據輸入的控件占用。
這是我到目前為止:
<Window x:Class="MyApp.MyForm"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MyForm" Height="346" Width="459">
<DockPanel>
<ToolBarTray DockPanel.Dock="Top">
<ToolBar>
<Button Command="New" Content="New" />
<Button Command="Open" Content="Open" />
<Button Command="Save" Content="Save" />
</ToolBar>
</ToolBarTray>
</DockPanel>
</Window>
如何在底部添加狀態欄,以及將占用表單其余部分的另一個面板?
您可以使用DockPanel來排列控件。 像這樣工具欄將停靠在頂部,狀態欄位於底部,休息空間將分配給datagrid,因為我們已在dockpanel中將“LastChildFill”設置為true。
<Window x:Class="MyApp.MyForm"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MyForm" Height="346" Width="459">
<DockPanel LastChildFill="True">
<ToolBarTray DockPanel.Dock="Top">
<ToolBar>
<Button Command="Edit" Content="Edit" />
<Button Command="Delete" Content="Delete" />
<Button Command="Refresh" Content="Refresh" />
</ToolBar>
</ToolBarTray>
<StatusBar Name="statusbar" DockPanel.Dock="Bottom">statusbar</StatusBar>
<DataGrid Name="grdEmployees" ItemsSource="{Binding EmpCollection}" />
建議你使用可以處理復雜布局的網格。
<Grid>
<Grid.RowDefinitions>
<RowDefinition x:Name="Toolbar1" Height="50" />
<RowDefinition x:Name="Toolbar2" Height="50" />
<RowDefinition x:Name="ForDataVisualize" Height="*" />
<RowDefinition x:Name="ForStatusbar" Height="25" />
</Grid.RowDefinitions>
</Grid>
這就是我用你的代碼玩的東西:
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MyForm" Height="346" Width="459">
<DockPanel Margin="0,0,0,-4">
<ToolBarTray DockPanel.Dock="Top">
<ToolBar>
<Button Command="New" Content="New" />
<Button Command="Open" Content="Open" />
<Button Command="Save" Content="Save" />
</ToolBar>
</ToolBarTray>
<StatusBar Height="21" VerticalAlignment="Bottom" DockPanel.Dock="Bottom" HorizontalAlignment="Right" Width="431" Margin="0,0,10,0"/>
<Grid Height="267" VerticalAlignment="Top" Width="451" DockPanel.Dock="Left"/>
</DockPanel>
</Window>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.