【问题标题】:WPF prism accessing view elements from shellWPF prism 从 shell 访问视图元素
【发布时间】:2010-06-30 14:31:41
【问题描述】:

我的应用程序中有一个带有一些按钮和选项卡以及一些模块的外壳。每个模块都有一个视图,其中包含一些元素,如数据网格、堆栈面板、文本框等。它们都有一个名称属性。现在,当我在 shell 上触发一个事件(比如单击一个按钮)时,我希望能够使用这些元素(比如清除用户在提供的文本框中写入的所有信息)。问题是,shell 看不到这些元素,也无法识别它们。有没有办法访问它们?

感谢您的任何建议。

【问题讨论】:

    标签: wpf shell prism command


    【解决方案1】:

    我建议您采用类似于 Stocktrader 参考实现对 CompositeCommands 所做的方法。基本上,CompositeCommand 是包含其他 ICommand 集合的 ICommand 的实现。在 RI 中,CompositeCommands 作为静态属性公开在一个集中可用的类上。

    在你的情况下,你可以有一个复合的 ClearCommand。 shell 的视图模型会将其暴露给 shell 视图,这样您就可以将清除按钮连接到它。

    然后,各种模块的视图模型将连接到这个 ClearCommand:

    GlobalCommands.ClearCommand.RegisterCommand(new DelegateCommand(x => ClearAllFields()));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-29
      • 1970-01-01
      • 2015-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多