Sdílet prostřednictvím


PropertyValueUIItemInvokeHandler Delegát

Definice

Představuje metodu, která bude zpracovávat InvokeHandler událost .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)

Parametry

context
ITypeDescriptorContext

Vlastnost ITypeDescriptorContext přidružená k ikoně, která byla dvakrát klikaná.

descriptor
PropertyDescriptor

Vlastnost přidružená k ikoně, která byla dvakrát klikaná.

invokedItem
PropertyValueUIItem

Přidružená PropertyValueUIItem k ikoně, která byla dvakrát klikaná.

Příklady

Následující příklad kódu poskytuje PropertyValueUIItem objekt pro jakékoli vlastnosti komponenty pojmenované HorizontalMargin nebo VerticalMargin. Pro PropertyValueUIItem tyto vlastnosti poskytuje obrázek, popis a obslužnou rutinu události, která zobrazí okno se zprávou při kliknutí na obrázek vlastnosti. Tento příklad kódu je součástí většího příkladu zadaného IPropertyValueUIService pro rozhraní.

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

Poznámky

Poklikáním na ikonu v okně Vlastnosti vyvoláte InvokeHandler událost PropertyValueUIItem , ke které je ikona přidružená. Událost InvokeHandler obvykle spustí uživatelské rozhraní (UI) pro úpravu hodnoty vlastnosti. PropertyValueUIItemInvokeHandler Přidejte k InvokeHandler vlastnosti vlastnosti PropertyValueUIItem přiřazení obslužné rutiny události k provedení příslušného chování při zobrazení ikony vedle názvu vlastnosti poklikání.

Při vytváření delegáta PropertyValueUIItemInvokeHandler identifikujete metodu, která bude zpracovávat událost. Pokud chcete událost přidružit k obslužné rutině události, přidejte do události instanci delegáta. Obslužná rutina události se volá při každém výskytu události, pokud delegáta neodeberete. Další informace o delegátech obslužné rutiny událostí naleznete v tématu Zpracování a vyvolávání událostí.

Metody rozšíření

Name Description
GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro

Viz také