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


PropertyValueUIItemInvokeHandler Делегат

Определение

Представляет метод, который будет обрабатывать InvokeHandler событие объекта PropertyValueUIItem.

public delegate void PropertyValueUIItemInvokeHandler(ITypeDescriptorContext ^ context, PropertyDescriptor ^ descriptor, PropertyValueUIItem ^ invokedItem);
public delegate void PropertyValueUIItemInvokeHandler(ITypeDescriptorContext context, PropertyDescriptor descriptor, PropertyValueUIItem invokedItem);
type PropertyValueUIItemInvokeHandler = delegate of ITypeDescriptorContext * PropertyDescriptor * PropertyValueUIItem -> unit
Public Delegate Sub PropertyValueUIItemInvokeHandler(context As ITypeDescriptorContext, descriptor As PropertyDescriptor, invokedItem As PropertyValueUIItem)

Параметры

context
ITypeDescriptorContext

Свойство ITypeDescriptorContext , связанное с значком, который был дважды щелкается.

descriptor
PropertyDescriptor

Свойство, связанное с значком, который был дважды щелкается.

invokedItem
PropertyValueUIItem

PropertyValueUIItem Связанный со значком, который был дважды щелкается.

Примеры

В следующем примере кода предоставляется PropertyValueUIItem объект для любых свойств компонента с именем HorizontalMargin или VerticalMargin. Для PropertyValueUIItem этих свойств предоставляется изображение, подсказка и обработчик событий, отображающий окно сообщения при щелчке изображения для свойства. Этот пример кода является частью более крупного примера, предоставленного IPropertyValueUIService для интерфейса.

// PropertyValueUIHandler delegate that provides PropertyValueUIItem
// objects to any properties named HorizontalMargin or VerticalMargin.
private void marginPropertyValueUIHandler(
    System.ComponentModel.ITypeDescriptorContext context,
    System.ComponentModel.PropertyDescriptor propDesc,
    ArrayList itemList)
{
    // A PropertyValueUIHandler added to the IPropertyValueUIService
    // is queried once for each property of a component and passed
    // a PropertyDescriptor that represents the characteristics of 
    // the property when the Properties window is set to a new 
    // component. A PropertyValueUIHandler can determine whether 
    // to add a PropertyValueUIItem for the object to its ValueUIItem 
    // list depending on the values of the PropertyDescriptor.
    if (propDesc.DisplayName.Equals("HorizontalMargin"))
    {
        Image img = Image.FromFile("SampImag.jpg");
        itemList.Add(new PropertyValueUIItem(img, new PropertyValueUIItemInvokeHandler(this.marginInvoke), "Test ToolTip"));
    }
    if (propDesc.DisplayName.Equals("VerticalMargin"))
    {
        Image img = Image.FromFile("SampImag.jpg");
        img.RotateFlip(RotateFlipType.Rotate90FlipNone);
        itemList.Add(new PropertyValueUIItem(img, new PropertyValueUIItemInvokeHandler(this.marginInvoke), "Test ToolTip"));
    }
}

Комментарии

Дважды щелкнув значок в окне свойств, вызовет InvokeHandler событие PropertyValueUIItem , с которым связан значок. Обычно InvokeHandler событие запускает пользовательский интерфейс для изменения значения свойства. PropertyValueUIItemInvokeHandler InvokeHandler Добавьте свойство обработчика PropertyValueUIItem событий, чтобы выполнить соответствующее поведение при двойном щелчке значка рядом с именем свойства.

При создании делегата PropertyValueUIItemInvokeHandler вы определите метод, который будет обрабатывать событие. Чтобы связать событие с обработчиком событий, добавьте экземпляр делегата в событие. Обработчик событий вызывается всякий раз, когда происходит событие, если вы не удалите делегат. Дополнительные сведения о делегатах обработчика событий см. в разделе "Обработка и создание событий".

Методы расширения

Имя Описание
GetMethodInfo(Delegate)

Возвращает объект, представляющий метод, представленный указанным делегатом.

Применяется к

См. также раздел