Поделиться через


Свойства элемента управления

Помимо свойств, определенных и реализованных самим элементом управления, технология элементов ActiveX также включает:

Свойства окружающей среды

Они предоставляются контейнером через сайт клиента элемента управления для предоставления экологических значений, которые применяются ко всем элементам управления, внедренным в контейнер. Например, контейнер может предоставить цвет фона по умолчанию или шрифт по умолчанию, который может использовать элемент управления. Внешние свойства предоставляются через IDispatch , реализованные в объекте сайта контейнера. Контейнер вызывает метод IOleControl::OnAmbientPropertyChange , когда любое из его внешних свойств изменяет значение. В ответ элемент управления может потребоваться обновить собственное внутреннее или визуальное состояние в ответе. Контейнер указывает, какое свойство окружающей среды изменилось с параметром DISPID или может передавать DISPID_UNKNOWN, чтобы указать, что изменены несколько внешних свойств.

Расширенные свойства

Они фактически реализуются контейнером для упаковки элементов управления, содержащихся в нем, для предоставления свойств, управляемых контейнером, которые отображаются как будто они были собственными свойствами элемента управления. Контейнер может агрегировать элемент управления, добавляя расширенные свойства для дополнения или переопределения свойств элемента управления. Агрегированный объект называется расширенным элементом управления. В контейнере расширенный элемент управления отображается как сам элемент управления, а расширенные свойства отображаются элементом управления. Контейнер поддерживает расширенный элемент управления с помощью метода IOleControlSite::GetExtendedControl. Метод GetExtendedControl позволяет элементам управления перемещаться по сайту к объекту расширенного элемента управления, предоставленному контейнером, если контейнер поддерживает эту функцию. Контейнер также может отображать страницы свойств для расширенных элементов управления в дополнение к тем страницам, которые элемент управления обычно будет указывать с помощью ISpecifyPropertyPages. Из-за этого элемент управления должен попросить контейнер отобразить кадр свойств, прежде чем элемент управления пытается сделать это самостоятельно. Для этого элемент управления вызывает IOleControlSite::ShowPropertyFrame. Если контейнер реализует эту функцию, он отображает сам кадр свойств; Если метод возвращает ошибку, элемент управления может показать кадр свойств.

Дополнительные сведения см. в следующих разделах:

Методы управления