Sdílet prostřednictvím


ExpandableObjectConverter Třída

Definice

Poskytuje převaděč typů pro převod rozbalitelných objektů na a z různých jiných reprezentací.

public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
    inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
Dědičnost
ExpandableObjectConverter
Odvozené

Příklady

Následující příklad kódu převede proměnnou typu Margins na řetězcovou proměnnou.

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

Následující příklad kódu ukazuje, jak pomocí NotifyParentPropertyAttribute třídy a ExpandableObjectConverter vytvořit rozbalitelnou vlastnost vlastního ovládacího prvku. Tento příklad kódu je součástí většího příkladu NotifyParentPropertyAttribute pro třídu.

[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

Poznámky

Tato třída přidává podporu vlastností objektu do metod a vlastností poskytovaných nástrojem TypeConverter. Chcete-li v objektu rozšířit PropertyGridtyp vlastnosti , zadejte tuto TypeConverter možnost pro standardní implementace a GetPropertiesSupportedGetProperties. Označte podřízené vlastnosti pomocí NotifyParentPropertyAttribute , aby se zajistilo správné chování PropertyGrid ovládacího prvku.

Poznámka

K převaděči typů byste nikdy neměli přistupovat přímo. Místo toho zavolejte příslušný převaděč pomocí .TypeDescriptor Další informace najdete v příkladech v TypeConverter základní třídě.

Další informace o převaděčích typů naleznete v TypeConverter základní třídě a Postupy: Implementace převaděče typů.

Konstruktory

ExpandableObjectConverter()

Inicializuje novou instanci ExpandableObjectConverter třídy.

Metody

CanConvertFrom(ITypeDescriptorContext, Type)

Vrátí, zda tento převaděč může převést objekt daného typu na typ tohoto převaděče pomocí zadaného kontextu.

(Zděděno od TypeConverter)
CanConvertFrom(Type)

Vrátí, zda tento převaděč může převést objekt daného typu na typ tohoto převaděče.

(Zděděno od TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Vrátí, zda tento převaděč může převést objekt na zadaný typ pomocí zadaného kontextu.

(Zděděno od TypeConverter)
CanConvertTo(Type)

Vrátí, zda tento převaděč může převést objekt na zadaný typ.

(Zděděno od TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Převede daný objekt na typ tohoto převaděče pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertFrom(Object)

Převede danou hodnotu na typ tohoto převaděče.

(Zděděno od TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze a zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromInvariantString(String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Převede daný text na objekt pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Převede daný text na objekt pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromString(String)

Převede zadaný text na objekt.

(Zděděno od TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Převede daný objekt hodnoty na zadaný typ pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertTo(Object, Type)

Převede daný objekt hodnoty na zadaný typ pomocí argumentů.

(Zděděno od TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertToInvariantString(Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí daného kontextu.

(Zděděno od TypeConverter)
ConvertToString(Object)

Převede zadanou hodnotu na řetězcovou reprezentaci.

(Zděděno od TypeConverter)
CreateInstance(IDictionary)

Znovu vytvoří Object danou sadu hodnot vlastností pro objekt.

(Zděděno od TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Vytvoří instanci typu, ke kterému TypeConverter je přidružena, pomocí zadaného kontextu, vzhledem k sadě hodnot vlastností objektu.

(Zděděno od TypeConverter)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetConvertFromException(Object)

Vrátí výjimku, která se má vyvolat, když nelze provést převod.

(Zděděno od TypeConverter)
GetConvertToException(Object, Type)

Vrátí výjimku, která se má vyvolat, když nelze provést převod.

(Zděděno od TypeConverter)
GetCreateInstanceSupported()

Vrátí, zda změna hodnoty v tomto objektu vyžaduje volání CreateInstance(IDictionary) metody k vytvoření nové hodnoty.

(Zděděno od TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Vrátí, zda změna hodnoty v tomto objektu vyžaduje volání CreateInstance(IDictionary) k vytvoření nové hodnoty pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Získá kolekci vlastností pro typ objektu určený parametr value.

GetProperties(ITypeDescriptorContext, Object)

Vrátí kolekci vlastností pro typ pole určený parametrem value pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetProperties(Object)

Vrátí kolekci vlastností pro typ pole určený parametrem value.

(Zděděno od TypeConverter)
GetPropertiesSupported()

Vrátí, zda tento objekt podporuje vlastnosti.

(Zděděno od TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Získá hodnotu určující, zda tento objekt podporuje vlastnosti pomocí zadaného kontextu.

GetStandardValues()

Vrátí kolekci standardních hodnot z výchozího kontextu pro datový typ, pro který je tento převaděč typů určen.

(Zděděno od TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Vrátí kolekci standardních hodnot pro datový typ, pro který je tento převaděč typů určen, pokud je k dispozici s kontextem formátu.

(Zděděno od TypeConverter)
GetStandardValuesExclusive()

Vrátí, zda je kolekce standardních hodnot vrácená z GetStandardValues() výhradního seznamu.

(Zděděno od TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Vrátí, zda kolekce standardních hodnot vrácených z GetStandardValues() je výhradním seznamem možných hodnot pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetStandardValuesSupported()

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu.

(Zděděno od TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
IsValid(ITypeDescriptorContext, Object)

Vrátí, zda je daný objekt hodnoty platný pro tento typ a pro zadaný kontext.

(Zděděno od TypeConverter)
IsValid(Object)

Vrátí, zda je daný objekt hodnoty platný pro tento typ.

(Zděděno od TypeConverter)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
SortProperties(PropertyDescriptorCollection, String[])

Seřadí kolekci vlastností.

(Zděděno od TypeConverter)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také