ExpandableObjectConverter Klasse

Definition

Stellt einen Typkonverter bereit, um erweiterbare Objekte in andere und aus anderen Darstellungen zu konvertieren.Provides a type converter to convert expandable objects to and from various other representations.

public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
    inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
Vererbung
ExpandableObjectConverter
Abgeleitet

Beispiele

Im folgenden Codebeispiel wird eine Variable vom Typ Margins in eine Zeichen folgen Variable konvertiert.The following code example converts a variable of type Margins to a string variable.

String^ strM = "1,2,3,4";
System::Drawing::Printing::Margins^ m = gcnew System::Drawing::Printing::Margins( 1,2,3,4 );
Console::WriteLine( TypeDescriptor::GetConverter( strM )->CanConvertTo( System::Drawing::Printing::Margins::typeid ) );
Console::WriteLine( TypeDescriptor::GetConverter( m )->ConvertToString( m ) );
string strM="1,2,3,4";
System.Drawing.Printing.Margins  m= new System.Drawing.Printing.Margins(1,2,3,4);
Console.WriteLine(TypeDescriptor.GetConverter(strM).CanConvertTo(typeof(System.Drawing.Printing.Margins))); 
Console.WriteLine(TypeDescriptor.GetConverter(m).ConvertToString(m)); 
Dim strM As String
strM = "1,2,3,4"
            Dim m As New System.Drawing.Printing.Margins(1, 2, 3, 4)
Console.WriteLine(TypeDescriptor.GetConverter(strM).CanConvertTo(GetType(System.Drawing.Printing.Margins)))
Console.WriteLine(TypeDescriptor.GetConverter(m).ConvertToString(m))

Im folgenden Codebeispiel wird veranschaulicht, wie die-NotifyParentPropertyAttribute und die ExpandableObjectConverter-Klasse verwendet werden, um eine erweiterbare Eigenschaft für ein benutzerdefiniertes Steuerelement zu erstellen.The following code example demonstrates how to use the NotifyParentPropertyAttribute and the ExpandableObjectConverter class to create an expandable property on a custom control. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die NotifyParentPropertyAttribute-Klasse bereitgestellt wird.This code example is part of a larger example provided for the NotifyParentPropertyAttribute class.

[TypeConverter(typeof(BorderAppearanceConverter))]
public class BorderAppearance
{
    private int borderSizeValue = 1;
    private Color borderColorValue = Color.Empty;

    [Browsable(true),
    NotifyParentProperty(true),
    EditorBrowsable(EditorBrowsableState.Always),
    DefaultValue(1)]
    public int BorderSize
    {
        get
        {
            return borderSizeValue;
        }
        set
        {
            if (value < 0)
            {
                throw new ArgumentOutOfRangeException(
                    "BorderSize",
                    value,
                    "must be >= 0");
            }

            if (borderSizeValue != value)
            {
                borderSizeValue = value;
            }
        }
    }

    [Browsable(true)]
    [NotifyParentProperty(true)]
    [EditorBrowsable(EditorBrowsableState.Always)]
    [DefaultValue(typeof(Color), "")]
    public Color BorderColor
    {
        get
        {
            return borderColorValue;
        }
        set
        {
            if (value.Equals(Color.Transparent))
            {
                throw new NotSupportedException("Transparent colors are not supported.");
            }

            if (borderColorValue != value)
            {
                borderColorValue = value;
            }
        }
    }
}
<TypeConverter(GetType(BorderAppearanceConverter))>  _
Public Class BorderAppearance
    Private borderSizeValue As Integer = 1
    Private borderColorValue As Color = Color.Empty
    
    
    <Browsable(True), NotifyParentProperty(True), EditorBrowsable(EditorBrowsableState.Always), DefaultValue(1)>  _
    Public Property BorderSize() As Integer 
        Get
            Return borderSizeValue
        End Get
        Set
            If value < 0 Then
                Throw New ArgumentOutOfRangeException("BorderSize", value, "must be >= 0")
            End If
            
            If borderSizeValue <> value Then
                borderSizeValue = value
            End If
        End Set
    End Property
    
    
    <Browsable(True), NotifyParentProperty(True), EditorBrowsable(EditorBrowsableState.Always), DefaultValue(GetType(Color), "")>  _
    Public Property BorderColor() As Color 
        Get
            Return borderColorValue
        End Get
        Set
            If value.Equals(Color.Transparent) Then
                Throw New NotSupportedException("Transparent colors are not supported.")
            End If
            
            If borderColorValue <> value Then
                borderColorValue = value
            End If
        End Set
    End Property
End Class

Hinweise

Diese Klasse fügt die Unterstützung für Eigenschaften eines Objekts den von TypeConverterbereitgestellten Methoden und Eigenschaften hinzu.This class adds support for properties on an object to the methods and properties provided by TypeConverter. Um einen Typ von Eigenschaften im PropertyGriderweiterbar zu machen, geben Sie diese TypeConverter für Standard Implementierungen von GetPropertiesSupported und GetPropertiesan.To make a type of property expandable in the PropertyGrid, specify this TypeConverter for standard implementations of GetPropertiesSupported and GetProperties. Markieren Sie untergeordnete Eigenschaften mit dem NotifyParentPropertyAttribute, um ein korrektes Verhalten in einem PropertyGrid Steuerelement sicherzustellen.Mark child properties with the NotifyParentPropertyAttribute to ensure correct behavior in a PropertyGrid control.

Hinweis

Sie sollten niemals direkt auf einen Typkonverter zugreifen.You should never access a type converter directly. Verwenden Sie stattdessen TypeDescriptor.Instead, call the appropriate converter by using TypeDescriptor. Weitere Informationen finden Sie in den Beispielen in der TypeConverter-Basisklasse.For more information, see the examples in the TypeConverter base class.

Weitere Informationen zu Typkonvertern finden Sie unter TypeConverter-Basisklasse und Gewusst wie: Implementieren eines Typkonverters.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

Konstruktoren

ExpandableObjectConverter()

Initialisiert eine neue Instanz der ExpandableObjectConverter-Klasse.Initializes a new instance of the ExpandableObjectConverter class.

Methoden

CanConvertFrom(ITypeDescriptorContext, Type)

Gibt zurück, ob dieser Konverter ein Objekt vom angegebenen Typ unter Verwendung des angegebenen Kontexts in den Typ dieses Konverters konvertieren kann.Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context.

(Geerbt von TypeConverter)
CanConvertFrom(Type)

Gibt zurück, ob dieser Konverter ein Objekt des angegebenen Typs in den Typ dieses Konverters konvertieren kann.Returns whether this converter can convert an object of the given type to the type of this converter.

(Geerbt von TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Gibt zurück, ob dieser Konverter das Objekt mithilfe des angegebenen Kontexts in den angegebenen Typ umwandeln kann.Returns whether this converter can convert the object to the specified type, using the specified context.

(Geerbt von TypeConverter)
CanConvertTo(Type)

Gibt zurück, ob dieser Konverter das Objekt in den angegebenen Typ konvertieren kann.Returns whether this converter can convert the object to the specified type.

(Geerbt von TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Konvertiert das angegebene Objekt in den Typ dieses Konverters mit dem angegebenen Kontext und Kulturinformationen.Converts the given object to the type of this converter, using the specified context and culture information.

(Geerbt von TypeConverter)
ConvertFrom(Object)

Konvertiert den angegebenen Wert in den Typ dieses Konverters.Converts the given value to the type of this converter.

(Geerbt von TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Konvertiert die angegebene Zeichenfolge unter Verwendung der invarianten Kultur und des angegebenen Kontexts in den Typ dieses Konverters.Converts the given string to the type of this converter, using the invariant culture and the specified context.

(Geerbt von TypeConverter)
ConvertFromInvariantString(String)

Konvertiert die angegebene Zeichenfolge unter Verwendung der invarianten Kultur in einen Typ dieses Konverters.Converts the given string to the type of this converter, using the invariant culture.

(Geerbt von TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Konvertiert den angegebenen Text unter Verwendung des angegebenen Kontexts und der angegebenen Kulturinformationen in ein Objekt.Converts the given text to an object, using the specified context and culture information.

(Geerbt von TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Konvertiert den angegebenen Text unter Verwendung des angegebenen Kontexts in ein Objekt.Converts the given text to an object, using the specified context.

(Geerbt von TypeConverter)
ConvertFromString(String)

Konvertiert den angegebenen Text in ein Objekt.Converts the specified text to an object.

(Geerbt von TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Konvertiert das angegebene Wertobjekt in den angegebenen Typ mit dem angegebenen Kontext und Kulturinformationen.Converts the given value object to the specified type, using the specified context and culture information.

(Geerbt von TypeConverter)
ConvertTo(Object, Type)

Konvertiert das angegebene Wertobjekt unter Verwendung der Argumente in den angegebenen Typ.Converts the given value object to the specified type, using the arguments.

(Geerbt von TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Konvertiert den angegebenen Wert unter Verwendung des angegebenen Kontexts in eine Zeichenfolgendarstellung mit invarianter Kultur.Converts the specified value to a culture-invariant string representation, using the specified context.

(Geerbt von TypeConverter)
ConvertToInvariantString(Object)

Konvertiert den angegebenen Wert in eine Zeichenfolgendarstellung mit invarianter Kultur.Converts the specified value to a culture-invariant string representation.

(Geerbt von TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Konvertiert den angegebenen Wert unter Verwendung des angegebenen Kontexts und der angegebenen Kulturinformationen in eine Zeichenfolgendarstellung.Converts the given value to a string representation, using the specified context and culture information.

(Geerbt von TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Konvertiert den angegebenen Wert unter Verwendung des angegebenen Kontexts in eine Zeichenfolgendarstellung.Converts the given value to a string representation, using the given context.

(Geerbt von TypeConverter)
ConvertToString(Object)

Konvertiert den angegebenen Wert in eine Zeichenfolgendarstellung.Converts the specified value to a string representation.

(Geerbt von TypeConverter)
CreateInstance(IDictionary)

Erstellt eine Object-Klasse mit einer angegebenen Menge von Eigenschaftswerten für das Objekt neu.Re-creates an Object given a set of property values for the object.

(Geerbt von TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Erstellt über den angegebenen Kontext, der aus einer angegebenen Menge von Eigenschaftswerten für das Objekt besteht, eine Instanz des Typs, der dieser TypeConverter-Klasse zugeordnet ist.Creates an instance of the type that this TypeConverter is associated with, using the specified context, given a set of property values for the object.

(Geerbt von TypeConverter)
Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetConvertFromException(Object)

Gibt eine Ausnahme zurück, wenn eine Konvertierung nicht erfolgen kann.Returns an exception to throw when a conversion cannot be performed.

(Geerbt von TypeConverter)
GetConvertToException(Object, Type)

Gibt eine Ausnahme zurück, wenn eine Konvertierung nicht erfolgen kann.Returns an exception to throw when a conversion cannot be performed.

(Geerbt von TypeConverter)
GetCreateInstanceSupported()

Gibt zurück, ob zum Ändern eines Werts für dieses Objekt ein Aufruf der CreateInstance(IDictionary)-Methode erforderlich ist.Returns whether changing a value on this object requires a call to the CreateInstance(IDictionary) method to create a new value.

(Geerbt von TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Gibt zurück, ob bei Ändern eines Werts für dieses Objekt ein Aufruf von CreateInstance(IDictionary) zum Erstellen eines neuen Werts mit dem angegebenen Kontext erforderlich ist.Returns whether changing a value on this object requires a call to CreateInstance(IDictionary) to create a new value, using the specified context.

(Geerbt von TypeConverter)
GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetProperties(ITypeDescriptorContext, Object)

Gibt unter Verwendung des angegebenen Kontexts eine Auflistung der Eigenschaften für den Typ von Array zurück, der durch den Wertparameter angegeben ist.Returns a collection of properties for the type of array specified by the value parameter, using the specified context.

(Geerbt von TypeConverter)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Ruft eine Auflistung von Eigenschaften für den durch den Wertparameter angegebenen Typ von Objekt ab.Gets a collection of properties for the type of object specified by the value parameter.

GetProperties(Object)

Gibt eine Auflistung von Eigenschaften für den Typ Array zurück, der durch den Wertparameter angegeben ist.Returns a collection of properties for the type of array specified by the value parameter.

(Geerbt von TypeConverter)
GetPropertiesSupported()

Gibt zurück, ob dieses Objekt Eigenschaften unterstützt.Returns whether this object supports properties.

(Geerbt von TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Ruft einen Wert ab, der angibt, ob dieses Objekt Eigenschaften unter Verwendung des angegebenen Kontexts unterstützt.Gets a value indicating whether this object supports properties using the specified context.

GetStandardValues()

Gibt eine Auflistung von Standardwerten aus dem Standardkontext für den Datentyp zurück, für den dieser Typkonverter vorgesehen ist.Returns a collection of standard values from the default context for the data type this type converter is designed for.

(Geerbt von TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Gibt eine Auflistung von Standardwerten für den Datentyp zurück, auf den dieser Typkonverter ausgelegt ist, wenn ein Formatkontext bereitgestellt wird.Returns a collection of standard values for the data type this type converter is designed for when provided with a format context.

(Geerbt von TypeConverter)
GetStandardValuesExclusive()

Gibt zurück, ob die von GetStandardValues() zurückgegebene Auflistung von Standardwerten eine exklusive Liste darstellt.Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list.

(Geerbt von TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Gibt zurück, ob die Auflistung von Standardwerten, die von der GetStandardValues()-Methode unter Verwendung des angegebenen Kontexts zurückgegeben werden, eine exklusive Liste von möglichen Werten darstellt.Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list of possible values, using the specified context.

(Geerbt von TypeConverter)
GetStandardValuesSupported()

Gibt zurück, ob dieses Objekt einen Standardsatz von Werten unterstützt, die aus einer Liste ausgewählt werden können.Returns whether this object supports a standard set of values that can be picked from a list.

(Geerbt von TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Gibt zurück, ob dieses Objekt einen Standardsatz von Werten unterstützt, die unter Verwendung des angegebenen Kontexts aus einer Liste ausgewählt werden können.Returns whether this object supports a standard set of values that can be picked from a list, using the specified context.

(Geerbt von TypeConverter)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
IsValid(ITypeDescriptorContext, Object)

Gibt zurück, ob das angegebene Wertobjekt für diesen Typ und den angegebenen Kontext gültig ist.Returns whether the given value object is valid for this type and for the specified context.

(Geerbt von TypeConverter)
IsValid(Object)

Ruft ab, ob das angegebene Werteobjekt für diesen Typ gültig ist.Returns whether the given value object is valid for this type.

(Geerbt von TypeConverter)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
SortProperties(PropertyDescriptorCollection, String[])

Sortiert eine Auflistung von Eigenschaften.Sorts a collection of properties.

(Geerbt von TypeConverter)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch