在我查看的所有示例中,RoutedUICommand()
的前两个参数都是相同的字符串,例如
private static RoutedUICommand add = new RoutedUICommand("Add", "Add", typeof(CommandLibrary));
他们之间有什么区别?
答案 0 :(得分:1)
使用Visual Studio时,您可以使用工字栏上的F-12按F12来检查含义的元数据。
无论如何,使用构造函数RoutedUICommand(String, String, Type)
:第一个字符串是描述性文本,第二个是名称,第三个是所有者类型。它不必相同。
请考虑此示例here:
public static RoutedCommand GreetUserCommand = new RoutedUICommand("Howdy! Just to say hello, nothing else.", "GreetUser", typeof(MainWindow));
和视图的用法:
<Window.CommandBindings>
<CommandBinding Command="{x:Static loc:MainWindow.GreetUserCommand}"
CanExecute="GreetUser_CanExecute" Executed="GreetUser_Executed"/>
</Window.CommandBindings>
<Window.ContextMenu>
<ContextMenu>
<MenuItem Command="{x:Static loc:MainWindow.GreetUserCommand}"/>
</ContextMenu>
</Window.ContextMenu>