我正在尝试了解如何将 Menu
添加到我的 WPF XAML 窗口。我的窗口当前使用 Grid
进行内容布局。我想在窗口顶部添加一个 Menu
,类似于您通常在 WinForm 应用程序中看到的那样。
我查看了示例,但似乎没有一个示例解释了 Grid
的使用。我看到大多数示例使用诸如 StackPanel
或 DockPanel
之类的东西。
这是我当前的 Window
,带有 Grid
。我应该只给这个 Menu
单独的一行,还是我需要某种面板?
<Window>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*" />
<RowDefinition Height="3*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="3*" />
</Grid.ColumnDefinitions>
<Menu>
<MenuItem Header="File" />
</Menu>
<GroupBox Header="Seasons" Grid.Row="0" Grid.Column="0" Grid.RowSpan="2">
<DataGrid Name="lstSeasons" AutoGenerateColumns="False" IsReadOnly="True" HeadersVisibility="Column" ItemsSource="{Binding SeasonsCollectionView}">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Width="*" Binding="{Binding Name}" />
<DataGridTextColumn Header="Division" Width="*" Binding="{Binding Division}" />
</DataGrid.Columns>
</DataGrid>
</GroupBox>
</Grid>
</Window>
最佳答案
您可以将 Menu
添加到主 WPF 布局 Grid
中,如下例所示:
<Menu Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0">
<MenuItem Header="_File"/>
<MenuItem Header="_Edit"/>
<MenuItem Header="_Help"/>
</Menu>
您不需要任何其他容器控件即可完成此任务。使用此 Menu
技术的实际 WPF 应用程序的屏幕截图如下所示(注意应用程序窗口顶部的 Menu
栏):http://examn8.com
希望这可能有所帮助。
关于c# - 使用网格向窗口添加菜单时,我是给菜单单独一行还是使用某种面板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36250776/