Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Топ:
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Выбираем на основной форме копанет treeView1, переходим в окно событий и создаем событие «NodeMouseClick». Переходим к редактированию кода данного события. Необходимо сделать так чтобы при выделение subItem у нас открывалась дочерняя форма, в заголовке данной формы прописывался текст выделенного документа. Для этого в редактировании события пропишем следующий код.
| private bool CreateWorkForm(string sNameForm) { WorkForm newf; newf = new WorkForm(); newf.Text = sNameForm; newf.MdiParent = this; newf.Show(); return true; } private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { bool bFormOpen = (e.Node.Parent!= null)? CreateWorkForm(e.Node.Text): false; } |
После того как будет прописан данный код, запустим нашу программу, выбирая элементы в дереве, у нас будут создаваться рабочие формы. Однако при повторном выборе документа создается еще одно окно, после добавления следующего кода мы избавимся от этой проблемы.
| private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { for (int i = this.MdiChildren.Length - 1; i >= 0; i--) { if (MdiChildren[i].Text == e.Node.Text) { MdiChildren[i].Activate(); return; } } bool bFormOpen = (e.Node.Parent!= null)? CreateWorkForm(e.Node.Text): false; } |
Запустите программу, что получилось?
Создание классов для документов и справочников.
Для работы с нашими документами и справочниками создадим отдельные классы, характеризующие эти документы. Данные классы будут содержать одинаковые имена методов, но выполнять разные действия. Для вызова данных классов в последствии создадим так называемый интерфейс. Каждый класс документа должен содержаться в отдельном файле.
Создадим класс для первого справочника, для этого добавим в проект файл реализации и назовем его Spr1.cs. Пропишем там следующий код.
| using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ASU_Sklad { class TSpr1 { public TSpr1() { // } } } |
Далее создадим интерфейс, который будет наследовать данный класс. Для этого добавим к проекту файл по аналогии с рис. 2.
рис 2.
После добавления файла в окне Solution Explorer мы видим следующее. рис 3.
рис. 3.
Содержимое созданного файла выглядит следующим образом.
| using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ASU_Sklad { public interface IDocuments { } } |
Наследуем наш класс от созданного интерфейса. Для этого перейдем в редактирование файла Spr1.cs и изменим описание класса.
| using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ASU_Sklad { class TSpr1: IDocuments { public TSpr1() { // } } } |
Теперь наш созданный класс наследуется от интерфейса.
Для следующих операций необходимо переименовать имена subItem нашего TreeView, как указано в таблице, таким образом, имена наших классов, создаваемых для документов будут фактически идентичны именам subItem, единственно, что остается достать имя класса из этих переменных.
| Name | Text |
| Spr_Spr1_Node | Справочник 1 |
| Spr_Spr2_Node | Справочник 2 |
| InDoc_InDoc1_Node | Входной документ 1 |
| InDoc_InDoc2_Node | Входной документ 2 |
| OutDoc_OutDoc1_Node | Выходной документ 1 |
|
|
|
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!