Определить, работает ли приложение WPF или визуализатор Windows Visual Studio
У меня есть приложение WPF, которое открывает всплывающее окно при загрузке главного окна. Проблема заключается в том, что при выборе файла.xaml в обозревателе решений в Visual Studio 2013 всплывающее окно "всплывает", даже если приложение не запущено. Я предполагаю, что это предполагаемое поведение, так как визуализатору необходимо выполнить код для визуализации макета страницы, но сейчас мне нужно закрывать его каждый раз, когда я загружаю страницу... Я не могу временно отключить это всплывающее окно, так как оно имеет некоторые стартовая логика для приложения (выбор местоположения,...).
Вот код всплывающего триггера
public GeneralProcess() //usercontrol
{
InitializeComponent();
Loaded += GeneralProcess_Loaded;
}
void GeneralProcess_Loaded(object sender, RoutedEventArgs e)
{
var popup = new StationSelect();
popup.Owner = Window.GetWindow(this);
popup.ShowDialog();
}
Есть ли способ узнать, работает ли приложение или я в визуализаторе, или есть способ отключить Loaded
событие только для визуальной студии? Цель состоит в том, чтобы все еще иметь возможность видеть страницу для удобного редактирования.
РЕДАКТИРОВАТЬ: этот вопрос является дубликатом. Однако этот ответ работал для меня.
1 ответ
void GeneralProcess_Loaded(object sender, RoutedEventArgs e)
{
if (DesignerProperties.GetIsInDesignMode(this))
return;
var popup = new StationSelect();
popup.Owner = Window.GetWindow(this);
popup.ShowDialog();
}