Чем конструкторы RoutedCommand отличаются друг от друга?
RoutedCommand в WPF имеет 3 перегруженных конструктора.
Учтите следующее:
public static RoutedCommand AddTextFieldCommand = new RoutedCommand();
против
public static RoutedCommand AddTextFieldCommand = new RoutedCommand("AddTextField", typeof(DesignerWindow));
Какое преимущество имеет второй?
Это облегчает определение в XAML? MSDN не дает много подробностей о втором конструкторе.
1 ответ
Решение
Исходя из моего опыта, между этими двумя нет реальной семантической разницы. Мне кажется, что они оба работают одинаково. Я не скажу однозначно, что разницы нет, просто я ее не заметил.
Однако, что я заметил, так это то, что хотя бы использование конструктора, который позволяет вам добавлять имя, и добавление полезного имени, действительно может помочь с отладкой. В точке останова, когда вы обрабатываете перенаправленные команды, вы можете гораздо проще определить, какая это команда, если у всех ваших команд есть имена.
- HTH, Дасти