Exemple #1
0
        /*
         * Методы должны быть перегружены - скопировать здесь и вставить в диалог наследник - заменить virtual на override ОБЯЗАТЕЛЬНО !
         */

        #region public static void Show(Object AttachedObject)
        /// <summary>
        /// Вызывает диалог редактирования объекта.
        /// Данный метод придется вручную переписать.
        /// </summary>
        /// <param name="AttachedObject"></param>
        public static void Show(Object AttachedObject)
        {
            EditObjectDialog dlg = GetDialogByObject(AttachedObject);

            if (dlg == null)
            {
                dlg = new EditObjectDialog(AttachedObject);
                RegisterDialog(dlg);
            }
            dlg.Show();
        }
Exemple #2
0
        /// <summary>
        /// При закрытии диалога удаляем его из коллекции
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private static void dlg_FormClosed(object sender, FormClosedEventArgs e)
        {
            EditObjectDialog dlg = sender as EditObjectDialog;

            if (dlg == null)
            {
                return;
            }
            //
            if (_OpenedDialogs.Contains(dlg))
            {
                _OpenedDialogs.Remove(dlg);
            }
        }
Exemple #3
0
        /*
         * Работа с диалогом
         */

        #region protected static void RegisterDialog(Object AttachedObject)
        /// <summary>
        /// Регистрирует диалог в общей куче, чтобы потом его открыть
        /// </summary>
        /// <param name="AttachedObject"></param>
        protected static void RegisterDialog(EditObjectDialog dlg)
        {
            _OpenedDialogs.Add(dlg);
            dlg.FormClosed += new FormClosedEventHandler(dlg_FormClosed);
        }