如何从菜单附加到按钮中获取所选项目

时间:2015-04-13 07:58:28

标签: c# wpf xaml

在我的.xaml中,我有一个按钮,当我左键单击它时,将显示一个菜单供选择。这是我的.xaml代码:

 <Button x:Name="Btn" Content="Btn" HorizontalAlignment="Left"  VerticalAlignment="Top" 
                 Height="26" Width ="40"  IsEnabled="True" 
                 Click="Btn_Click" ContextMenuService.IsEnabled="False"> 

我禁用了ContextMenuService,因此当我右键单击按钮时,菜单将无法显示。

下面是我左键单击按钮后显示菜单的代码。名称&#34;菜单&#34;参考上下文菜单。

private void Btn_Click(object sender, RoutedEventArgs e)
        {
            ContextMenu contextMenu = this.FindName("Menu") as ContextMenu;
            contextMenu.PlacementTarget = sender as Button;
            contextMenu.IsOpen = true;
        }

是否有根据我的情况从上下文菜单选择中返回值的解决方案?

2 个答案:

答案 0 :(得分:1)

我认为你需要的是一个dropdown button,它快速有效且组合良好。

您可以在WPF扩展工具包中使用它,此Link将指导您。

SplitButton,以防您需要点击按钮以及菜单。

答案 1 :(得分:0)

听起来您想在上下文菜单中更改模式或属性。因此,我要做的就是在按钮和下拉菜单中创建一个UserControl,它们将相互了解。当你改变&#34;模式&#34;或者在你的上下文菜单中有类似的东西,所以你要在UserControl属性中更改它,这样按钮也会知道它,你可以填充它以供以后使用。