ExpandableObjectConverter Osztály

Definíció

Típuskonverterrel bővíthető objektumokat alakíthat át különböző más ábrázolásokra.

public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
    inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
Öröklődés
ExpandableObjectConverter
Származtatott

Példák

Az alábbi példakód egy típusváltozót Margins sztringváltozóvá alakít át.

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(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))

Az alábbi példakód bemutatja, hogyan hozhat létre bővíthető tulajdonságot egy egyéni vezérlőn az osztály és az NotifyParentPropertyAttributeExpandableObjectConverter osztály használatával. Ez a példakód egy nagyobb, az NotifyParentPropertyAttribute osztályhoz tartozó példa része.

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

    [Browsable(true),
    NotifyParentProperty(true),
    EditorBrowsable(EditorBrowsableState.Always),
    DefaultValue(1)]
    public int BorderSize
    {
        get => 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 => 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

Megjegyzések

Ez az osztály támogatja az objektumok tulajdonságait a megadott metódusokhoz és tulajdonságokhoz TypeConverter. Ha egy tulajdonságtípust bővíthetővé szeretne tenni a PropertyGridfájlban, ezt adja meg TypeConverter a standard implementációkhoz GetPropertiesSupported és GetPropertiesa . A gyermektulajdonságok megjelölése a NotifyParentPropertyAttribute vezérlők helyes viselkedésének PropertyGrid biztosítása érdekében.

Note

Soha ne érje el közvetlenül a típuskonvertert. Ehelyett hívja meg a megfelelő konvertert a következő használatával TypeDescriptor: . További információkért tekintse meg az alaposztály példáit TypeConverter .

A típuskonverterekről további információt az alaposztály és a TypeConverterTípuskonverter implementálása című témakörben talál.

Konstruktorok

Name Description
ExpandableObjectConverter()

Inicializálja a ExpandableObjectConverter osztály új példányát.

Metódusok

Name Description
CanConvertFrom(ITypeDescriptorContext, Type)

Azt adja vissza, hogy ez a konverter képes-e az adott típusú objektumot ennek a konverternek a típusára konvertálni a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
CanConvertFrom(Type)

Azt adja vissza, hogy ez a konverter képes-e átalakítani egy adott típusú objektumot ennek a konverternek a típusára.

(Öröklődés forrása TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Azt adja vissza, hogy ez a konverter képes-e átalakítani az objektumot a megadott típusra a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
CanConvertTo(Type)

Azt adja vissza, hogy ez a konverter képes-e átalakítani az objektumot a megadott típusra.

(Öröklődés forrása TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Az adott objektumot a konverter típusává alakítja a megadott környezet- és kulturális információk használatával.

(Öröklődés forrása TypeConverter)
ConvertFrom(Object)

A megadott értéket átalakítja ennek a konverternek a típusára.

(Öröklődés forrása TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

A megadott sztringet átalakítja ennek a konverternek a típusára az invariáns kultúra és a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
ConvertFromInvariantString(String)

Az adott sztringet átalakítja ennek a konverternek a típusára az invariáns kultúra használatával.

(Öröklődés forrása TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

A megadott szöveget objektummá alakítja a megadott környezet- és kulturális információk használatával.

(Öröklődés forrása TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

A megadott szöveget objektummá alakítja a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
ConvertFromString(String)

A megadott szöveget objektummá alakítja.

(Öröklődés forrása TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

A megadott értékobjektumot a megadott típusúvá alakítja a megadott környezet- és kulturális információk használatával.

(Öröklődés forrása TypeConverter)
ConvertTo(Object, Type)

Az argumentumok használatával a megadott értékobjektumot a megadott típussá alakítja.

(Öröklődés forrása TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

A megadott értéket kulturális invariáns sztring-ábrázolássá alakítja a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
ConvertToInvariantString(Object)

A megadott értéket kulturális invariáns sztring-ábrázolássá alakítja.

(Öröklődés forrása TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

A megadott értéket sztringábrázolássá alakítja a megadott környezet- és kulturális információk használatával.

(Öröklődés forrása TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

A megadott értéket sztringábrázolássá alakítja a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
ConvertToString(Object)

A megadott értéket sztringábrázolássá alakítja.

(Öröklődés forrása TypeConverter)
CreateInstance(IDictionary)

Egy adott tulajdonságérték-készlet újbóli létrehozása Object az objektumhoz.

(Öröklődés forrása TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Létrehoz egy olyan példányt, amelyhez ez TypeConverter társítva van, a megadott környezet használatával, az objektumhoz tartozó tulajdonságértékek halmazával.

(Öröklődés forrása TypeConverter)
Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetConvertFromException(Object)

Kivételt ad vissza, ha a konvertálás nem hajtható végre.

(Öröklődés forrása TypeConverter)
GetConvertToException(Object, Type)

Kivételt ad vissza, ha a konvertálás nem hajtható végre.

(Öröklődés forrása TypeConverter)
GetCreateInstanceSupported()

Azt adja vissza, hogy az objektum értékének módosítása új érték létrehozásához meghívja-e a CreateInstance(IDictionary) metódust.

(Öröklődés forrása TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Azt adja vissza, hogy az objektum értékének módosítása új érték létrehozására CreateInstance(IDictionary) irányuló hívást igényel-e a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Beolvas egy tulajdonsággyűjteményt az értékparaméter által megadott objektumtípushoz.

GetProperties(ITypeDescriptorContext, Object)

Az értékparaméter által megadott tömbtípus tulajdonságainak gyűjteményét adja vissza a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
GetProperties(Object)

Az értékparaméter által megadott tömbtípus tulajdonságainak gyűjteményét adja vissza.

(Öröklődés forrása TypeConverter)
GetPropertiesSupported()

Azt adja vissza, hogy ez az objektum támogatja-e a tulajdonságokat.

(Öröklődés forrása TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Beolvas egy értéket, amely jelzi, hogy ez az objektum támogatja-e a tulajdonságokat a megadott környezet használatával.

GetStandardValues()

A szabványos értékek gyűjteményét adja vissza az alapértelmezett környezetből az ehhez a típuskonverterhez tervezett adattípushoz.

(Öröklődés forrása TypeConverter)
GetStandardValues(ITypeDescriptorContext)

A típuskonverter adattípusának szabványos értékeinek gyűjteményét adja vissza, ha egy formátumkörnyezetben van megadva.

(Öröklődés forrása TypeConverter)
GetStandardValuesExclusive()

Azt adja vissza, hogy a visszaadott GetStandardValues() standard értékek gyűjteménye kizárólagos lista-e.

(Öröklődés forrása TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Azt adja vissza, hogy a visszaadott GetStandardValues() standard értékek gyűjteménye a lehetséges értékek kizárólagos listája-e a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
GetStandardValuesSupported()

Azt adja vissza, hogy ez az objektum támogatja-e a listából kiválasztható szabványos értékek készletét.

(Öröklődés forrása TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Azt adja vissza, hogy ez az objektum támogatja-e a lista alapján kiválasztható szabványos értékek készletét a megadott környezet használatával.

(Öröklődés forrása TypeConverter)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
IsValid(ITypeDescriptorContext, Object)

Azt adja vissza, hogy a megadott értékobjektum érvényes-e erre a típusra és a megadott környezetre.

(Öröklődés forrása TypeConverter)
IsValid(Object)

Azt adja vissza, hogy a megadott értékobjektum érvényes-e erre a típusra.

(Öröklődés forrása TypeConverter)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
SortProperties(PropertyDescriptorCollection, String[])

Tulajdonságok gyűjteményének rendezése.

(Öröklődés forrása TypeConverter)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

A következőre érvényes:

Lásd még