2

メソッドの戻り値に基づいて WPF ボタンを有効/無効にする必要があります。 ユーザーがそのボタンをクリックできるかどうかを通知
するメソッドがあります。HasPermission

Command => CanExecuteアクションの実行を回避するために使用できることがわかりました。ここに見られる:

WPFでボタンを有効/無効にする方法は?

私の質問は、許可を確認する Windows がたくさんあるのですが、これが最善の方法ですか? 持っているウィンドウごとにfrom 2toコマンドを書かなければならないのでしょうか?N

これを作る方法はありますglobalか?
たとえば、一般的なコマンド (検索/作成/...) を作成し、呼び出し元のウィンドウのみを取得してHasPermissionメソッドに渡すことはできますか?

4

1 に答える 1

2

You can absolutely make a static class that holds static commands, and refer to those from anywhere in your XAML.

It goes like this:

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

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

Then in some view:

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

Of course, infra: is a xmlns namespace mapping to GlobalCommands' namespace.

于 2012-11-04T17:59:56.753 に答える