mvvm - 如何从另一个 View UI刷新一个 View UI

标签 mvvm silverlight-4.0 prism-4

我有两个名为UserView和RoleView的 View 。

UserView.xaml包含RadGridView,其中包含三列
用户ID (标签)| 用户名(标签)| 角色(下拉菜单)。

RoleView.xaml包含一个TextBox,可在其中将Roles添加到数据库中。
角色(文本框)。

  • 步骤1.现在,我首先打开UserView.xaml,它将显示
    具有适当角色的数据库中的记录。
  • 步骤2。现在,我打开新页面RoleView.xaml(最小化UserView.xaml)。
  • 步骤3.我添加了一个角色。 (AdminRole)
  • 步骤4。现在,我打开UserView.xaml(它已经在内存中,所以我
    导航到此页面)
  • 步骤5。现在,我双击带有Role(Dropdown)的任何行。
    列),它将进入编辑模式并填充角色列表。
    **but it will not display recently added role (AdminRole) in dropdown. because of the data source will not getting referesh.**
    

  • 如果我要关闭UserView.xaml并重新打开此页面,则它将在下拉列表中显示最近添加的角色(AdminRole)。

    注意:我的要求是,一旦从任何地方进行任何更改,我都必须更新或通知所有打开的 View 。

    我在用
    Silverlight 4(MVVM)
    棱镜
    Telerik RadGridView

    您的帮助/意见/建议将不胜感激!

    谢谢,
    Imdadhusen

    最佳答案

    Prism附带一个事件聚集器。您拥有这些 Activity 的发布者和订阅者,我们将其称为“消息”。看看下面的MDSN链接:

    http://msdn.microsoft.com/en-us/library/ff921122(v=pandp.20).aspx

    这意味着您可以让每个 View 都订阅一条更新消息,并让它们在收到此消息时进行更新。因此,每次 View 更改时,您都可以发送“更新”消息。

    关于mvvm - 如何从另一个 View UI刷新一个 View UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9988769/

    相关文章:

    wpf - 使用 MVVM 生成菜单的 DataTemplate

    android - 如何在 mvvm 架构中实现 BaseActivity?不使用依赖注入(inject)

    c# - ServiceLocator.Current.GetInstance 可以返回 null 吗?

    .net - 如何从 Web 服务 JSON 数组或对象反序列化?

    wpf - prism - 使用 RequestNavigate 时未调用 IsNavigationTarget

    c# - WPF 如何从 MVVM 中的子 ViewModel 调用父 ViewModel 中的某些逻辑

    MVVM 子属性变化检测

    wpf - 如何根据 ViewModel 属性的值让 View 元素淡入/淡出?

    .net - 使用 MEF 动态加载 XAP 文件时出现问题。 IE 正在崩溃

    silverlight - 为什么我的 Silverlight BusyIndi​​cator 在设置 IsBusy = true 后仍然不可见?