Compartir a través de


PropertyValueUIItemInvokeHandler Delegado

Definición

Representa el método que controlará el evento InvokeHandler de 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)

Parámetros

context
ITypeDescriptorContext

ITypeDescriptorContext de la propiedad asociada al icono sobre el que se ha hecho doble clic.

descriptor
PropertyDescriptor

Propiedad asociada al icono sobre el que se ha hecho doble clic.

invokedItem
PropertyValueUIItem

PropertyValueUIItem asociado al icono sobre el que se ha hecho doble clic.

Ejemplos

En el ejemplo de código siguiente se proporciona un PropertyValueUIItem objeto para cualquier propiedad del componente denominado HorizontalMargin o VerticalMargin. Para PropertyValueUIItem estas propiedades proporciona una imagen, una información sobre herramientas y un controlador de eventos que muestra un cuadro de mensaje cuando se hace clic en la imagen de la propiedad. Este ejemplo de código forma parte de un ejemplo más grande proporcionado para la IPropertyValueUIService interfaz .

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

Comentarios

Al hacer doble clic en un icono del ventana Propiedades se producirá el InvokeHandler evento de PropertyValueUIItem que el icono está asociado. Normalmente, el InvokeHandler evento inicia una interfaz de usuario (UI) para editar el valor de la propiedad. Agregue un PropertyValueUIItemInvokeHandler elemento a la InvokeHandler propiedad de PropertyValueUIItem para asignar un controlador de eventos para realizar el comportamiento adecuado cuando se haga doble clic en el icono que se muestra junto al nombre de la propiedad.

Cuando se crea un delegado PropertyValueUIItemInvokeHandler, se identifica el método que controlará el evento. Para asociar el evento al controlador, se debe agregar una instancia del delegado al evento. Siempre que se produce el evento, se llama a su controlador, a menos que se quite el delegado. Para obtener más información sobre los delegados del controlador de eventos, consulte Control y generación de eventos.

Métodos de extensión

GetMethodInfo(Delegate)

Obtiene un objeto que representa el método representado por el delegado especificado.

Se aplica a

Consulte también