我需要根据方法的返回启用/禁用WPF按钮。
我有HasPermission
方法告诉我用户是否可以点击该按钮。
我已经看到我可以使用Command => CanExecute
来避免执行操作。见到这里:
How to enable/disable a button in WPF?
我的问题是,我有很多Windows会在其中检查权限,这是最好的方法吗?对于我拥有的每个窗口,我是否真的必须从2
写入N
命令?
有没有办法让这个global
?
例如,我可以创建通用命令(搜索/创建/ ...)然后只获取调用它的窗口并将其传递给我的HasPermission
方法吗?
答案 0 :(得分: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:
是映射到GlobalCommands
'命名空间的xmlns命名空间。