WPF MVVM 中如何给ContextMenu的MenuItem添加命令

E次奥 2015-05-28 04:25:06
RT;

MVVM 中如何给ContextMenu的MenuItem添加命令
...全文
543 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2017-05-19
  • 打赏
  • 举报
回复
View的datacontext的设定对于右键菜单不是直接的DataContext -》那就设定binding 模式为使用 RelativeSource 向上查找到view的DataContext 下面的ContextNenu代码 都可以出发viewModel中的Command

  <Button Width="120" Height="30"  Content="ContextMenu">
            <Button.ContextMenu>
                <ContextMenu>
                    <MenuItem Header="ViewModel 命令" Command="{Binding R_PrevItemCommand}" CommandParameter="点击MenuItem Command"></MenuItem>
                </ContextMenu>
            </Button.ContextMenu>
        </Button>
zgl263885058 2017-05-19
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
你在ViewModel种定义命令,在xaml上绑定不就行了
虽然时间久了,但是我也遇到同样问题了,原因可能是直接绑定的话,找不到ViewModel,View的datacontext的设定对于右键菜单不是直接的DataContext,大哥你看看要怎么才可以让绑定寻找到View本身设定的Datacontext?
E次奥 2015-05-29
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
你在ViewModel种定义命令,在xaml上绑定不就行了
你试试就知道了,直接绑定根本显示不出 ContextMenu Item和普通的控件绑定不一样
exception92 2015-05-29
  • 打赏
  • 举报
回复
你在ViewModel种定义命令,在xaml上绑定不就行了

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧