Если вам нужен другой код для запуска в зависимости от интерфейса, который вызвал команду, вы, вероятно, делаете что-то не так.
Если у вас есть что-то вроде простого нажатия клавиши или открытия диалогового окна с запросом дополнительной информации из меню, вы должны разбить это на две команды (например, команды MS Office «Печать» и «Быстрая печать»).
Если вам действительно приходится делать разные вещи с каждым элементом пользовательского интерфейса, вы не получаете никаких преимуществ от использования команд и должны подумать об использовании старомодных обработчиков событий, по крайней мере тогда специфичный для элемента код привязан к элементу и не хранится в центральный всеобъемлющий код «Выполнить».
И если вы решите игнорировать мой совет выше, взгляните на свойство CommandParameter, вы можете установить другое значение для параметра для каждого элемента пользовательского интерфейса, по крайней мере с его помощью вы можете сохранить иллюзию разделения пользовательского интерфейса / логики. Команды предназначены для обеспечения.