У вас есть практически неограниченная гибкость для управления внешним видом вашего приложения WPF во время выполнения, поэтому то, что вы предлагаете, вполне осуществимо.
Не зная всех подробностей вашего приложения, похоже, вы могли бы создать два разных набора элементов управления пользовательским интерфейсом, один для редакторов, а другой для геймеров, и оба использовать одни и те же базовые логические классы biz.
Чтобы выбрать, в каком режиме запускать ваше приложение во время выполнения, нужно решить, какого типа пользователя вы добавите, и соответствующим образом разместить элемент управления редактора или пользовательского интерфейса в контейнере основного макета.
private void Window_Loaded(object sender, RoutedEventArgs e)
{
if(user == editor) {
this.LayoutRoot.Children.Add(editorUserControl);
}
else {
this.LayoutRoot.Children.Add(gamerUserControl);
}
}
И есть множество других способов сделать это.