PropertyValueUIItemInvokeHandler Delegat

Definition

Stellt die Methode zur Behandlung des InvokeHandler-Ereignisses eines PropertyValueUIItem-Objekts dar.

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)

Parameter

context
ITypeDescriptorContext

Der ITypeDescriptorContext für die Eigenschaft, die dem Symbol zugeordnet ist, auf das doppelgeklickt wurde.

descriptor
PropertyDescriptor

Die Eigenschaft, die dem Symbol zugeordnet ist, auf das doppelgeklickt wurde.

invokedItem
PropertyValueUIItem

Das PropertyValueUIItem, das dem Symbol zugeordnet ist, auf das doppelgeklickt wurde.

Beispiele

Das folgende Codebeispiel stellt ein PropertyValueUIItem -Objekt für alle Eigenschaften der Komponente mit dem Namen HorizontalMargin oder VerticalMarginbereit. Die PropertyValueUIItem für diese Eigenschaften stellt ein Bild, eine QuickInfo und einen Ereignishandler bereit, der ein Meldungsfeld anzeigt, wenn auf das Bild für die Eigenschaft geklickt wird. Dieses Codebeispiel ist Teil eines größeren Beispiels für die IPropertyValueUIService Schnittstelle.

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

Hinweise

Durch Doppelklicken auf ein Symbol in der Eigenschaftenfenster wird das InvokeHandler Ereignis ausgelöstPropertyValueUIItem, dem das Symbol zugeordnet ist. Das InvokeHandler Ereignis startet in der Regel eine Benutzeroberfläche (UI), um den Wert der Eigenschaft zu bearbeiten. Fügen Sie der InvokeHandler -Eigenschaft eines ein PropertyValueUIItemPropertyValueUIItemInvokeHandler hinzu, um einen Ereignishandler zuzuweisen, um das entsprechende Verhalten auszuführen, wenn auf das neben dem Eigenschaftennamen angezeigte Symbol doppelt geklickt wird.

Beim Erstellen eines PropertyValueUIItemInvokeHandler-Delegaten bestimmen Sie die Methode für die Ereignisbehandlung. Um dem Ereignishandler das Ereignis zuzuordnen, fügen Sie dem Ereignis eine Instanz des Delegaten hinzu. Der Ereignishandler wird bei jedem Eintreten des Ereignisses aufgerufen, sofern der Delegat nicht entfernt wird. Weitere Informationen zu Ereignishandlerdelegierten finden Sie unter Behandeln und Auslösen von Ereignissen.

Erweiterungsmethoden

GetMethodInfo(Delegate)

Ruft ein Objekt ab, das die Methode darstellt, die vom angegebenen Delegaten dargestellt wird.

Gilt für:

Weitere Informationen