- •Цели
- •Введение
- •Модель Component Object Model (COM)
- •основанная на компонентах (1)
- •основанная на компонентах (2)
- •основанная на компонентах (3)
- •Преимущества
- •Связывание и внедрение
- •Элементы управления ActiveX
- •спецализированных элементов управления
- •Шаги по созданию своего
- •Использование специализированного ЭУ
- •Добавление свойств к пользовательскому ЭУ
- •Обеспечение доступа к свойству
- •Пользователь и пользовательский ЭУ
- •Связывание событий с пользовательскими ЭУ
- •пользовательскими ЭУ (2)
- •пользовательскими ЭУ (3)
- •Определение события в
- •Определение события в
- •Наследование от
- •Наследование от
- •Наследование от класса Control
- •Наследование от класса User Control
- •Наследование от класса User Control
- •приложений с WinForms (1)
- •Объединение офисных
- •Иерархия объектной модели
- •Использование объектов
- •Использование объектов
Наследование от
существующих элементов
управления WinForms (1)
Операция наследования от любого существующего элемента управления выполняется для того, чтобы расширить функциональность нового элемента
Можно изменить функциональность нового элемента управления, реализуя собственные методы и свойства
22
Наследование от
существующих элементов управления WinForms (2)
Новый проект |
Добавить |
Выбрать |
1 |
2 |
3 |
Windows |
производный ЭУ |
Custom Control |
Изменить имя
4
Например: (для Button – кнопка)
базового класса
public class Custom Control1 : System.Windows.Forms.Button
|
|
|
|
|
Выполнить замещение метода OnPaint, чтобы |
|
Реализовать все нужные |
|
|
5 |
|
|
6 |
|
|
|
изменить внешний вид элемента управления |
|
методы и свойства |
protected override void OnPaint(PaintEventArgs pe) { base.OnPaint(pe); }
Сохранить и протестировать элемент управления7
23
Наследование от класса Control
Наследование от класса Control обеспечивает базовую функциональность
Наследование от класса Control:
Берёт на себя обязанности по обработке ввода пользователя
Определяет размер элемента управления
Обеспечивает обработку сообщений и окон, а также безопасность
Оно не обеспечивает:
Прорисовку, которая действительно изображает на экране визуальный интерфейс
Интерактивное взаимодействие с пользователем
24
Наследование от класса User Control
Используется, если нужна коллективная функциональность одного или нескольких элементов управления WinForms
При создании пользовательского элемента управления нам предоставляется интерфейс, в котором могут быть размещены стандартные элементы управления WinForms
Свойства пользовательских элементов управления недоступны программисту через код
Базовая функциональность теперь обеспечивается UserControl
25
Наследование от класса User Control
Создать новый
проект Windows Control Library
Эти элементы управления должны быть позиционированы так, как они будут окончательно размещены в пользовательском элементе управления
Сохранить и
протестировать элемент управления
Перетащить элементы управления из панели
инструментов WinForms в текущий Конструктор
Реализовать все
специализированны е методы и/или свойства
26
приложений с WinForms (1)
Бизнес требует быстрой реакции на происходящее, наилучшие решения и толковый инвестиционный план
Разрабатываемые приложения должны удовлетворять текущие потребности бизнеса
Все виды бизнеса нуждаются в конкретных, ситуационных решениях
WinForms предоставляет расширенную поддержку самых важных приложений, например, Microsoft Office
27
Объединение офисных
приложений с WinForms (2)
Технологии при объединении способны выдавать более быстрые и эффективные
решения
Продукты предоставляют следующие возможности:
Объектные модели, которые обеспечивают доступ к функциональности продуктов фирмы Microsoft
Технология OLE для доступа к объектным моделям
VB.net, как среду разработки во многих продуктах Microsoft
28
Иерархия объектной модели
Верхний уровень
Приложение
2 уровень
Объекты, включённые в приложение
3 уровень
Дополнительный объект, необходимый для доступа к функциональности объекта второго звена
Схожие объекты в иерархии могут быть объединены в коллекции
В любое время мы можем работать с отдельным членом такой коллекции, как с независимым объектом
Объекты могут быть также сгруппированы в имитации контейнера, известной под названием метаколлекции (metacollection)
29
Использование объектов
(1)
Все объекты имеют методы и свойства
Свойства определяют характеристики объекта
Метод определяет задачу, которая может быть выполнена объектом
Объекты используются посредством манипулирования их методами и свойствами в коде
Оператор "точка" (.) используется для составления пути к требуемому объекту
30
Использование объектов
(2)Код обращается к методам и свойствам, используя наивысший уровень иерархии :
Не всегда необходим доступ самого высокого уровня
Лучше всего вызывать объекты явно, чем в неявной форме
31