PropertyValueUIHandler Делегат

Определение

Представляет метод, добавляющий делегат в реализацию IPropertyValueUIService.

public delegate void PropertyValueUIHandler(ITypeDescriptorContext ^ context, PropertyDescriptor ^ propDesc, ArrayList ^ valueUIItemList);
public delegate void PropertyValueUIHandler(ITypeDescriptorContext context, PropertyDescriptor propDesc, ArrayList valueUIItemList);
type PropertyValueUIHandler = delegate of ITypeDescriptorContext * PropertyDescriptor * ArrayList -> unit
Public Delegate Sub PropertyValueUIHandler(context As ITypeDescriptorContext, propDesc As PropertyDescriptor, valueUIItemList As ArrayList)

Параметры

context
ITypeDescriptorContext

Можно ITypeDescriptorContext использовать для получения сведений о контексте.

propDesc
PropertyDescriptor

Объект, PropertyDescriptor представляющий запрашиваемое свойство.

valueUIItemList
ArrayList

ArrayList ОбъектPropertyValueUIItem, содержащий элементы пользовательского интерфейса, связанные с свойством.

Примеры

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

// 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"));
    }
}

Комментарии

При вызове этого делегата можно добавить PropertyValueUIItem содержащие элементы пользовательского интерфейса для указанного свойства, ArrayList переданного valueUIItemList в качестве параметра.

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

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

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

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

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