代码之家  ›  专栏  ›  技术社区  ›  Scott Vercuski

我能抑制这种情绪吗“CanExecute公司” 在MVVM模式中调用

  •  0
  • Scott Vercuski  · 技术社区  · 14 年前

    我正在使用WPF和MVVM模式处理一个树结构。我首先创建20个根节点,并在单击每个节点时延迟加载子节点。比如说。。。如果我有以下情况:

    Level 1
        Level 1.1
    Level 2
    Level 3
        Level 3.1
        Level 3.2
    

    我的问题是,当我单击level1.1加载它的子级时,会检查level1.1的“CanExecute”方法以及level1.1的每个子级的所有根级项。如果孩子太多,这会浪费很多时间。

    我的问题是,我能不能抑制对“CanExecute”的调用?我没有必要称之为这些子级别,我想绕过它。我对MVVM框架非常陌生,所以我不确定这是否可行。

    1 回复  |  直到 14 年前
        1
  •  1
  •   NVM    14 年前

    如果在视图模型中使用Prism(WPF和SilverLight的复合应用程序指南)“DelegateCommand”,则必须显式调用command.RaiseCanExecuteChanged命令无论什么时候你想让CanExecute去拜访它。