Freigeben über


PropertyValueUIItem-Konstruktor

Initialisiert eine neue Instanz der PropertyValueUIItem-Klasse.

Namespace: System.Drawing.Design
Assembly: System.Drawing (in system.drawing.dll)

Syntax

'Declaration
Public Sub New ( _
    uiItemImage As Image, _
    handler As PropertyValueUIItemInvokeHandler, _
    tooltip As String _
)
'Usage
Dim uiItemImage As Image
Dim handler As PropertyValueUIItemInvokeHandler
Dim tooltip As String

Dim instance As New PropertyValueUIItem(uiItemImage, handler, tooltip)
public PropertyValueUIItem (
    Image uiItemImage,
    PropertyValueUIItemInvokeHandler handler,
    string tooltip
)
public:
PropertyValueUIItem (
    Image^ uiItemImage, 
    PropertyValueUIItemInvokeHandler^ handler, 
    String^ tooltip
)
public PropertyValueUIItem (
    Image uiItemImage, 
    PropertyValueUIItemInvokeHandler handler, 
    String tooltip
)
public function PropertyValueUIItem (
    uiItemImage : Image, 
    handler : PropertyValueUIItemInvokeHandler, 
    tooltip : String
)

Parameter

  • uiItemImage
    Das anzuzeigende Symbol. Das Bild muss eine Größe von 8 x 8 Pixel haben.
  • handler
    Der Handler, der bei einem Doppelklick auf das Bild aufgerufen werden soll.
  • tooltip
    Die ToolTip-Eigenschaft, die für die Eigenschaft angezeigt werden soll, der diese PropertyValueUIItem-Klasse zugeordnet ist.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentNullException

uiItemImage oder handler ist NULL (Nothing in Visual Basic).

Beispiel

Das folgende Codebeispiel stellt für alle Eigenschaften der Komponente HorizontalMargin oder VerticalMargin ein PropertyValueUIItem-Objekt bereit. PropertyValueUIItem für diese Eigenschaften stellt ein Bild, eine QuickInfo und einen Ereignishandler bereit, in dem beim Klicken auf das Bild für die Eigenschaft ein Meldungsfeld angezeigt wird. Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels für die IPropertyValueUIService-Schnittstelle.

' PropertyValueUIHandler delegate that provides PropertyValueUIItem
' objects to any properties named HorizontalMargin or VerticalMargin.
Private Sub marginPropertyValueUIHandler(ByVal context As System.ComponentModel.ITypeDescriptorContext, ByVal propDesc As System.ComponentModel.PropertyDescriptor, ByVal itemList As ArrayList)
    ' 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") Then
        Dim img As Image = DeserializeFromBase64Text(imageBlob1)
        itemList.Add(New PropertyValueUIItem(img, New PropertyValueUIItemInvokeHandler(AddressOf Me.marginInvoke), "Test ToolTip"))
    End If
    If propDesc.DisplayName.Equals("VerticalMargin") Then
        Dim img As Image = DeserializeFromBase64Text(imageBlob1)
        img.RotateFlip(RotateFlipType.Rotate90FlipNone)
        itemList.Add(New PropertyValueUIItem(img, New PropertyValueUIItemInvokeHandler(AddressOf Me.marginInvoke), "Test ToolTip"))
    End If
End Sub
// 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 = DeserializeFromBase64Text(imageBlob1);
        itemList.Add( new PropertyValueUIItem( img, new PropertyValueUIItemInvokeHandler(this.marginInvoke), "Test ToolTip") );
    }
    if( propDesc.DisplayName.Equals( "VerticalMargin" ) )
    {
        Image img = DeserializeFromBase64Text(imageBlob1);
        img.RotateFlip(RotateFlipType.Rotate90FlipNone);
        itemList.Add( new PropertyValueUIItem( img, new PropertyValueUIItemInvokeHandler(this.marginInvoke), "Test ToolTip") );
    }
}
// PropertyValueUIHandler delegate that provides PropertyValueUIItem
// objects to any properties named horizontalMargin or verticalMargin.
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 = DeserializeFromBase64Text( imageBlob1 );
      itemList->Add( gcnew PropertyValueUIItem( img,gcnew PropertyValueUIItemInvokeHandler( this, &PropertyUIComponent::marginInvoke ),"Test ToolTip" ) );
   }

   if ( propDesc->DisplayName->Equals( "verticalMargin" ) )
   {
      Image^ img = DeserializeFromBase64Text( imageBlob1 );
      img->RotateFlip( RotateFlipType::Rotate90FlipNone );
      itemList->Add( gcnew PropertyValueUIItem( img,gcnew PropertyValueUIItemInvokeHandler( this, &PropertyUIComponent::marginInvoke ),"Test ToolTip" ) );
   }
}
// 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.get_DisplayName().Equals("HorizontalMargin")) {
        Image img = DeserializeFromBase64Text(imageBlob1);

        itemList.Add(new PropertyValueUIItem(img, 
            new PropertyValueUIItemInvokeHandler(this.MarginInvoke),
            "Test ToolTip"));
    }
    if (propDesc.get_DisplayName().Equals("VerticalMargin")) {
        Image img = DeserializeFromBase64Text(imageBlob1);

        img.RotateFlip(RotateFlipType.Rotate90FlipNone);
        itemList.Add(new PropertyValueUIItem(img, 
            new PropertyValueUIItemInvokeHandler(this.MarginInvoke),
            "Test ToolTip"));
    }
} //MarginPropertyValueUIHandler

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

PropertyValueUIItem-Klasse
PropertyValueUIItem-Member
System.Drawing.Design-Namespace
IPropertyValueUIService-Schnittstelle
PropertyValueUIItemInvokeHandler