2

我需要根据方法的返回启用/禁用 WPF 按钮。
我有一种HasPermission方法可以告诉我用户是否可以单击该按钮。

我已经看到我可以Command => CanExecute用来避免执行该操作。在这里看到:

如何启用/禁用 WPF 中的按钮?

我的问题是,我有很多 Windows 来检查权限,这是最好的方法吗?我真的需要为我拥有的每个窗口写 from 2to命令吗?N

有什么办法可以做到这一点global
例如,我可以创建通用命令(搜索/创建/...),然后只获取调用它的窗口并将其传递给我的HasPermission方法吗?

4

1 回答 1

2

您绝对可以创建一个包含静态命令的静态类,并从 XAML 中的任何位置引用这些命令。

它是这样的:

public static class GlobalCommands
{
   //ICommand can be DelegateCommand, RelayCommand... whatever floats your boat.
   public static ICommand SearchCommand { get; set; }

   //Implementation, and more static commands...
}

然后在某些方面:

<UserControl ...>
   ...
   <Button Content="Search" Command="{x:Static infra:GlobalCommands.SearchCommand}" />
   ...
</UserControl>

当然infra:是一个xmlns命名空间映射到GlobalCommands'命名空间。

于 2012-11-04T17:59:56.753 回答