使用Telerik RadMenu以编程方式选择mvvm prism应用程序的菜单项

使用Telerik RadMenu以编程方式选择mvvm prism应用程序的菜单项,mvvm,telerik,Mvvm,Telerik,您好,我有一个prism/mvvm风格的应用程序,我正在使用RadMenu控件。我在一个项目中还有一个视图/视图模型对,在另一个项目中还有另一个用于RadMenu控件的视图/视图模型对。基本上,我想使用事件聚合器将事件发送到RadMenu的视图模型(与RadMenu所在的视图成对的视图模型)。这样RadMenu的视图模型可以通知RadMenu以编程方式切换到其他RadMenuItem。我想我可以使用混合行为来包含我想要重现的行为,但是我在RadMenu中找不到一个方法,可以让我通过编程选择一个特

您好,我有一个prism/mvvm风格的应用程序,我正在使用RadMenu控件。我在一个项目中还有一个视图/视图模型对,在另一个项目中还有另一个用于RadMenu控件的视图/视图模型对。基本上,我想使用事件聚合器将事件发送到RadMenu的视图模型(与RadMenu所在的视图成对的视图模型)。这样RadMenu的视图模型可以通知RadMenu以编程方式切换到其他RadMenuItem。我想我可以使用混合行为来包含我想要重现的行为,但是我在RadMenu中找不到一个方法,可以让我通过编程选择一个特定的菜单项


如果控件现在不支持此操作,是否有解决方法?谢谢

我认为这是一种误解。据我所知,菜单上没有选择项。您只能选中或取消选中菜单中的项目。您是否试图模拟用户单击特定项以触发菜单项后面的功能?如果是这种情况,我会提出另一种方法,直接在ViewModel中处理EA消息。你可以从那里触发代码。如果您正在执行MVVM,菜单项后面的逻辑将在您的VM中实现。:)

感谢您,当有人单击另一个模块中的面板时,我试图显示一个模块中的菜单项(因此也就是视图/视图模型对)。我知道我可以使用ea传递事件消息。但这是触发实际所需菜单项的最后一步,我想知道如何触发。根据telerik的说法,我可以使用一个名为IsCurrent的属性,但我必须尝试一下。欢迎提供任何其他建议和代码示例。谢谢。据我所知,菜单通常是折叠的。某些东西会触发ViewModel处理的消息。那么您想展开并显示菜单吗?我猜你真的想触发菜单项后面的代码。在菜单中使用鼠标时,您看到的可能只是一种悬停效果,而不是选择。在菜单中进行选择(我看不见)是没有意义的。所以再说一次:您是想在消息到达后调用某个东西,还是只想指示(展开菜单f.e.)发生了什么?