C# RibbonMenuButton绑定项单击到命令
我的RibbonMenuButton有问题。目前我有:C# RibbonMenuButton绑定项单击到命令,c#,wpf,xaml,data-binding,ribbon-control,C#,Wpf,Xaml,Data Binding,Ribbon Control,我的RibbonMenuButton有问题。目前我有: <RibbonMenuButton Label="Meeting" Width="Auto" ToolTipDescription="Display requests on the agenda for the meeting selected" ToolTipTitle="Meeting" LargeImageSource="pack://application:
<RibbonMenuButton Label="Meeting" Width="Auto" ToolTipDescription="Display requests on the agenda for the meeting selected" ToolTipTitle="Meeting"
LargeImageSource="pack://application:,,,/Resources/meeting.png"
ItemsSource="{Binding MeetingsAvailable}">
<RibbonMenuButton.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Value}"/>
</DataTemplate>
</RibbonMenuButton.ItemTemplate>
</RibbonMenuButton>
我的会议可用实际上是一本字典
。这段代码正在运行,RibbonMenuButton
很好地显示了词汇表的每个值
现在,我正试图取回已单击的菜单项的键。我的想法是在我的ViewModel中使用ICommand
,并将事件绑定到此命令。但我真的不知道如何获得与单击RibbonMenuButton
有人已经这么做了吗
提前感谢。您必须在VM中创建一个命令,以便绑定到该命令。然后,必须将字典的键绑定到command参数,以便在commandfunction中使用它。可能您必须在DataTemplate中创建一个附加按钮。您可以使用ItemContainerStyle
属性将ICommand
数据绑定到RibbonMenuButton
,如下所示:
<RibbonMenuButton Label="Meeting" ItemsSource="{Binding MeetingsAvailable}" ... >
<RibbonMenuButton.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Value}"/>
</DataTemplate>
</RibbonMenuButton.ItemTemplate>
<RibbonMenuButton.ItemContainerStyle>
<Style TargetType="{x:Type MenuItem}">
<Setter Property="Command" Value="{Binding DataContext.NameOfCommand,
RelativeSource={RelativeSource AncestorType={x:Type Views:View}}}" />
<Setter Property="CommandParameter" Value="{Binding Key}" />
</Style>
</RibbonMenuButton.ItemContainerStyle>
</RibbonMenuButton>
我不知道如何将“我点击了一个项目”绑定到ViewModel中的特定命令(我想拿回钥匙)。。。这是不可理解的英语。请编辑您的问题,以明确您正试图做什么以及您遇到了什么问题。是的,这更容易理解。。。非常感谢。我现在已经取消了我的投票。谢谢,对问题的第一个版本感到抱歉。真的没有必要道歉。。。只是如果我们不能理解你的问题,我们就无法回答。谢谢你,很好的解决方案