VS2010 WPF-我可以仅仅通过UI(不编辑XAML)创建包含菜单项的菜单吗
只是尝试将我的第一个菜单控件拖到VS2010中的WPF应用程序上 是否有办法(通过VS2010 UI)设置菜单项等?还是必须跳入XAML才能做到这一点VS2010 WPF-我可以仅仅通过UI(不编辑XAML)创建包含菜单项的菜单吗,wpf,visual-studio-2010,xaml,menu,Wpf,Visual Studio 2010,Xaml,Menu,只是尝试将我的第一个菜单控件拖到VS2010中的WPF应用程序上 是否有办法(通过VS2010 UI)设置菜单项等?还是必须跳入XAML才能做到这一点 而且,在我将菜单控件拖到窗口上之后,它似乎位于窗口的顶部。然而,我希望它被呈现为一个典型的Windows菜单,如果有意义的话,它位于与窗口本身相关联的顶部(而不是窗口内容)。工具箱中的VS2010“菜单”项是否为您提供了“传统”windows应用程序菜单 我真的鼓励您在开始使用控件之前先阅读面板(和附加属性),以了解它们的布局方式(尤其是面板和C
而且,在我将菜单控件拖到窗口上之后,它似乎位于窗口的顶部。然而,我希望它被呈现为一个典型的Windows菜单,如果有意义的话,它位于与窗口本身相关联的顶部(而不是窗口内容)。工具箱中的VS2010“菜单”项是否为您提供了“传统”windows应用程序菜单 我真的鼓励您在开始使用控件之前先阅读面板(和附加属性),以了解它们的布局方式(尤其是面板和ContentControls之间的差异是关键)。在WPF中,面板决定控件的布局方式(至少是控件的基本布局)。这听起来很像你试图用WinForms的方式来做WPF——最后你会非常沮丧,在时间临近之前需要很多镇静剂……:) 在VS Studio中,模板使用网格作为布局的基础,默认情况下,网格会居中并拉伸内容(以及覆盖控件),因此只需在其中拖动菜单,就会提供不敏感的设计 至于跳入XAML,我从不使用工具箱和可视化设计器。这当然是一个品味的问题,但是如果您习惯于使用VS(与Blend相反),我发现编辑原始XAML时更容易理解发生了什么 一些入门资源:和。对于一个简单的入门学习环境,我非常喜欢(这是在XAML/WPF中构建的编辑器,尽管是在.NET3.5SP1中) 编辑:一个小示例-只需复制窗口标记之间的所有内容,并将其粘贴到Visual Studio提供给您的模板中:
<Window ....>
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="_File">
<MenuItem Header="_Open"/>
<MenuItem Header="_Save"/>
<MenuItem Header="_Exit"/>
</MenuItem>
<MenuItem Header="_Edit">
<MenuItem Header="C_ut"/>
<MenuItem Header="_Copy"/>
<MenuItem Header="Paste"/>
</MenuItem>
<MenuItem Header="Help">
<MenuItem Header="About"/>
</MenuItem>
</Menu>
<GroupBox Header="Some interesting controls go here">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label Content="_First property"/>
<TextBox Grid.Column="1"/>
<Label Grid.Row="1" Content="_Second property"/>
<TextBox Grid.Column="1" Grid.Row="1"/>
</Grid>
</GroupBox>
</DockPanel>
</Window>
我鼓励您在开始使用控件之前先阅读面板(以及附加属性),以了解它们的布局方式(特别是面板和内容控件之间的差异是关键)。在WPF中,面板决定控件的布局方式(至少是控件的基本布局)。这听起来很像你试图用WinForms的方式来做WPF——最后你会非常沮丧,在时间临近之前需要很多镇静剂……:) 在VS Studio中,模板使用网格作为布局的基础,默认情况下,网格会居中并拉伸内容(以及覆盖控件),因此只需在其中拖动菜单,就会提供不敏感的设计 至于跳入XAML,我从不使用工具箱和可视化设计器。这当然是一个品味的问题,但是如果您习惯于使用VS(与Blend相反),我发现编辑原始XAML时更容易理解发生了什么 一些入门资源:和。对于一个简单的入门学习环境,我非常喜欢(这是在XAML/WPF中构建的编辑器,尽管是在.NET3.5SP1中) 编辑:一个小示例-只需复制窗口标记之间的所有内容,并将其粘贴到Visual Studio提供给您的模板中:
<Window ....>
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="_File">
<MenuItem Header="_Open"/>
<MenuItem Header="_Save"/>
<MenuItem Header="_Exit"/>
</MenuItem>
<MenuItem Header="_Edit">
<MenuItem Header="C_ut"/>
<MenuItem Header="_Copy"/>
<MenuItem Header="Paste"/>
</MenuItem>
<MenuItem Header="Help">
<MenuItem Header="About"/>
</MenuItem>
</Menu>
<GroupBox Header="Some interesting controls go here">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label Content="_First property"/>
<TextBox Grid.Column="1"/>
<Label Grid.Row="1" Content="_Second property"/>
<TextBox Grid.Column="1" Grid.Row="1"/>
</Grid>
</GroupBox>
</DockPanel>
</Window>
谢谢Goblin-你不知道我可以在VS2010中打开一个WPF应用程序(带菜单)来看看吗?(我现在正在找一个。)非常同意。一旦你开始掌握WPF中的“布局管理器”,你就再也不会回到拖放WinForms了。我发现VS2010WPF编辑器已经很好地升级到了'08。我现在使用designer只是为了快速和肮脏的实验…是的,这对Goblin很有帮助,谢谢-所以我看到你使用了DockPanel,所以我的问题是,我猜答案是没有UI方法来建立菜单项-但是你必须手动将它们放在XAML中,这通常是我最后的结果最外层的容器。它超级简单,易于理解。有些人到处使用网格,因为DockPanel中的最后一个控件设置为填充时,DockPanel中的选项卡导航出现了一些问题(因此,您经常会将控件停靠在最后一个控件的底部,这会扰乱选项卡顺序)。感谢Goblin-您不知道我可以在VS2010中打开的WPF应用程序示例(带有菜单)来查看吗?(我现在正在找一个。)非常同意。一旦你开始掌握WPF中的“布局管理器”,你就再也不会回到拖放WinForms了。我发现VS2010WPF编辑器已经很好地升级到了'08。我现在使用designer只是为了快速和肮脏的实验…是的,这对Goblin很有帮助,谢谢-所以我看到你使用了DockPanel,所以我的问题是,我猜答案是没有UI方法来建立菜单项-但是你必须手动将它们放在XAML中,这通常是我最后的结果外层