Главная страница
Случайная страница
КАТЕГОРИИ:
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Способ 2
- В разметку файла Window2.xaml добавьте определение свойства Name окна Window2 для его идентификации в коллекции приложения
< Window x: Class=" WpfApp3.Window2" xmlns=" https://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns: x=" https://schemas.microsoft.com/winfx/2006/xaml" Name=" Window_2" Title=" Дочернее окно Window2: Работа объекта ImageDrawing через разметку" SizeToContent=" WidthAndHeight" ResizeMode=" NoResize" Background=" Green" >...................................< /Window> - Модифицируйте обработчик контекстного меню в файле Window1.xaml.cs следующим образом
// Предотвращение повторного открытия окна: Способ 2// Обработчик контекстного менюprivate void Create_Window2(object sender, RoutedEventArgs e){ bool windowExists = false; foreach (Window window in Application.Current.Windows) { if (window.Name == " Window_2") { windowExists = true; window.Activate(); // Сдвинуть на передний план break; } } if (! windowExists) { wnd2 = new Window2(); wnd2.Show(); }} - Запустите приложение и убедитесь, что и этот обработчик блокирования повторного запуска теперь тоже работает правильно
- Разберитесь с кодом
|