如何从另一个视图UI刷新一个视图UI

时间:2012-04-03 07:18:58

标签: mvvm silverlight-4.0 prism-4

我有两个名为UserView和RoleView的视图。

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

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

  • 步骤1.现在首先打开UserView.xaml,它将显示 具有适当角色的数据库记录。
  • 步骤2.现在我打开新页面RoleView.xaml(最小化UserView.xaml)。
  • 第3步。我添加了一个角色。 (AdminRole)
  • 步骤4.现在我打开UserView.xaml(它已经在内存中,所以只是我 导航到此页面)
  • 步骤5.现在,我双击任意一个具有角色的行(下拉列表 列)它将进入编辑模式并填充角色列表。

    **but it will not display recently added role (AdminRole) in dropdown. because of the data source will not getting referesh.**
    

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

注意:我的要求是,我必须在任何地方进行任何更改后更新或通知所有已打开的视图。

我正在使用 Silverlight 4(MVVM) PRISM telerik RadGridView

我们非常感谢您的帮助/意见/建议!

谢谢, Imdadhusen

1 个答案:

答案 0 :(得分:1)

Prism带有Event Aggreator。如果您有这些活动的发布者和订阅者,我们称之为“消息”。看看下面的MDSN链接:

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

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