Чем конструкторы RoutedCommand отличаются друг от друга?

RoutedCommand в WPF имеет 3 перегруженных конструктора.

Учтите следующее:

public static RoutedCommand AddTextFieldCommand = new RoutedCommand();

против

public static RoutedCommand AddTextFieldCommand = new RoutedCommand("AddTextField", typeof(DesignerWindow));

Какое преимущество имеет второй?

Это облегчает определение в XAML? MSDN не дает много подробностей о втором конструкторе.

1 ответ

Решение

Исходя из моего опыта, между этими двумя нет реальной семантической разницы. Мне кажется, что они оба работают одинаково. Я не скажу однозначно, что разницы нет, просто я ее не заметил.

Однако, что я заметил, так это то, что хотя бы использование конструктора, который позволяет вам добавлять имя, и добавление полезного имени, действительно может помочь с отладкой. В точке останова, когда вы обрабатываете перенаправленные команды, вы можете гораздо проще определить, какая это команда, если у всех ваших команд есть имена.

- HTH, Дасти

Другие вопросы по тегам