Freigeben über


PropertyValueUIHandler Delegat

Definition

Stellt die Methode dar, die einer Implementierung von IPropertyValueUIService einen Delegaten hinzufügt.

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)

Parameter

context
ITypeDescriptorContext

Ein ITypeDescriptorContext, über den Kontextinformationen abgerufen werden können.

propDesc
PropertyDescriptor

Ein PropertyDescriptor, der die abgefragte Eigenschaft darstellt.

valueUIItemList
ArrayList

Eine ArrayList von PropertyValueUIItem-Objekten, die die der Eigenschaft zugeordneten Benutzeroberflächenelemente enthält.

Beispiele

In diesem folgenden Codebeispiel wird das Erstellen einer PropertyValueUIHandler Ereignishandlermethode veranschaulicht, die Objekte für alle Eigenschaften mit dem Namen HorizontalMargin oder VerticalMarginbereitstelltPropertyValueUIItem.

// 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

Wenn dieser Delegat aufgerufen wird, kann er dem übergebenen Parameter ein PropertyValueUIItem enthaltenes UI-Element für die ArrayListvalueUIItemList angegebene Eigenschaft hinzufügen.

Erweiterungsmethoden

GetMethodInfo(Delegate)

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

Gilt für:

Weitere Informationen