Вы можете реализовать каждый отдельный «режим» в виде отдельного UserControl.
Затем создайте оболочку с комбинированным списком, где комбинированный OnChange поменяет местами то, что UserControl подключено к оболочке.* Любые другие полностью общие компоненты, такие как кнопки ОК / Отмена, могут быть частью оболочки.
Совершенно альтернативная реализация, которую следует рассмотреть, - это метод с вкладками, но он, вероятно, вылетает, только если для пользователя имеет смысл действоватьна некоторых из них.
Что вы будете делать, если пользователь выберет A в комбо, внесет изменения в UserControlForA, а затем выберет B в комбо?Это может быть досадный случай, и если это рабочий код, то в будущем вы будете получать запросы пользователей на изменение его работы.
Если вы уверены в дизайне, сделайте это.Если нет, я бы поиграл с несколькими приложениями и попытался найти хороший пример того же рода вещей, и подумал бы, как они к нему подошли.
Но с технической точки зрения я думаю, что UserControl - это то, что выописывающий.
(Правка: crud только что увидел xaml / wpf в вопросе, не уверен, что это правильно в этом контексте, не имеет смысла)