Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Stellt die Methode dar, die einer Implementierung von IPropertyValueUIService einen Delegaten hinzufügt.
Namespace: System.Drawing.Design
Assembly: System.Drawing (in system.drawing.dll)
Syntax
'Declaration
Public Delegate Sub PropertyValueUIHandler ( _
context As ITypeDescriptorContext, _
propDesc As PropertyDescriptor, _
valueUIItemList As ArrayList _
)
'Usage
Dim instance As New PropertyValueUIHandler(AddressOf HandlerMethod)
public delegate void PropertyValueUIHandler (
ITypeDescriptorContext context,
PropertyDescriptor propDesc,
ArrayList valueUIItemList
)
public delegate void PropertyValueUIHandler (
ITypeDescriptorContext^ context,
PropertyDescriptor^ propDesc,
ArrayList^ valueUIItemList
)
/** @delegate */
public delegate void PropertyValueUIHandler (
ITypeDescriptorContext context,
PropertyDescriptor propDesc,
ArrayList valueUIItemList
)
JScript unterstützt die Verwendung von Delegaten, aber nicht die Deklaration von neuen Delegaten.
Parameter
- context
Ein ITypeDescriptorContext, über den Kontextinformationen abgerufen werden können.
- propDesc
Ein PropertyDescriptor, der die abgefragte Eigenschaft darstellt.
- valueUIItemList
Eine ArrayList von PropertyValueUIItem-Objekten, die die der Eigenschaft zugeordneten Benutzeroberflächenelemente enthält.
Hinweise
Wenn der Delegat aufgerufen wird, kann dieser der als valueUIItemList-Parameter übergebenen ArrayList ein PropertyValueUIItem hinzufügen, das Benutzeroberflächenelemente für die angegebene Eigenschaft enthält.
Beispiel
Im folgenden Codebeispiel wird das Erstellen einer Methode für den PropertyValueUIHandler-Ereignishandler veranschaulicht, die PropertyValueUIItem-Objekte für alle Eigenschaften mit dem Namen HorizontalMargin oder VerticalMargin bereitstellt.
' 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
System.Drawing.Design-Namespace
IPropertyValueUIService-Schnittstelle
PropertyValueUIItem