Bagikan melalui


ExpandableObjectConverter Kelas

Definisi

Menyediakan pengonversi jenis untuk mengonversi objek yang dapat diperluas ke dan dari berbagai representasi lainnya.

public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
    inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
Warisan
ExpandableObjectConverter
Turunan

Contoh

Contoh kode berikut mengonversi variabel jenis Margins menjadi variabel string.

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

Contoh kode berikut menunjukkan cara menggunakan NotifyParentPropertyAttribute dan ExpandableObjectConverter kelas untuk membuat properti yang dapat diperluas pada kontrol kustom. Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk NotifyParentPropertyAttribute kelas .

[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

Keterangan

Kelas ini menambahkan dukungan untuk properti pada objek ke metode dan properti yang disediakan oleh TypeConverter. Untuk membuat jenis properti dapat diperluas di PropertyGrid, tentukan ini TypeConverter untuk implementasi GetPropertiesSupported standar dan GetProperties. Tandai NotifyParentPropertyAttribute properti anak dengan untuk memastikan perilaku yang PropertyGrid benar dalam kontrol.

Catatan

Anda tidak boleh mengakses pengonversi jenis secara langsung. Sebagai gantinya, panggil pengonversi yang sesuai dengan menggunakan TypeDescriptor. Untuk informasi selengkapnya, lihat contoh di TypeConverter kelas dasar.

Untuk informasi selengkapnya tentang pengonversi jenis, lihat TypeConverter kelas dasar dan Cara: Menerapkan Pengonversi Jenis.

Konstruktor

ExpandableObjectConverter()

Menginisialisasi instans baru kelas ExpandableObjectConverter.

Metode

CanConvertFrom(ITypeDescriptorContext, Type)

Mengembalikan apakah konverter ini dapat mengonversi objek dari jenis yang diberikan ke jenis pengonversi ini, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
CanConvertFrom(Type)

Mengembalikan apakah konverter ini dapat mengonversi objek dari jenis yang diberikan ke tipe pengonversi ini.

(Diperoleh dari TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Mengembalikan apakah konverter ini dapat mengonversi objek ke jenis yang ditentukan, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
CanConvertTo(Type)

Mengembalikan apakah konverter ini dapat mengonversi objek ke tipe yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Mengonversi objek yang diberikan ke jenis konverter ini, menggunakan informasi konteks dan budaya yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertFrom(Object)

Mengonversi nilai yang diberikan ke tipe konverter ini.

(Diperoleh dari TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Mengonversi string yang diberikan ke jenis konverter ini, menggunakan budaya invariant dan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertFromInvariantString(String)

Mengonversi string yang diberikan ke jenis konverter ini, menggunakan budaya invarian.

(Diperoleh dari TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Mengonversi teks yang diberikan menjadi objek, menggunakan informasi konteks dan budaya yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Mengonversi teks yang diberikan menjadi objek, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertFromString(String)

Mengonversi teks yang ditentukan menjadi objek.

(Diperoleh dari TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Mengonversi objek nilai yang diberikan ke jenis yang ditentukan, menggunakan informasi konteks dan budaya yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertTo(Object, Type)

Mengonversi objek nilai yang diberikan ke jenis yang ditentukan, menggunakan argumen .

(Diperoleh dari TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Mengonversi nilai yang ditentukan menjadi representasi string invarian budaya, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertToInvariantString(Object)

Mengonversi nilai yang ditentukan menjadi representasi string invarian budaya.

(Diperoleh dari TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Mengonversi nilai yang diberikan menjadi representasi string, menggunakan informasi konteks dan budaya yang ditentukan.

(Diperoleh dari TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Mengonversi nilai yang diberikan menjadi representasi string, menggunakan konteks yang diberikan.

(Diperoleh dari TypeConverter)
ConvertToString(Object)

Mengonversi nilai yang ditentukan menjadi representasi string.

(Diperoleh dari TypeConverter)
CreateInstance(IDictionary)

Membuat ulang Object sekumpulan nilai properti yang diberikan untuk objek .

(Diperoleh dari TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Membuat instans jenis yang terkait dengan ini TypeConverter , menggunakan konteks yang ditentukan, mengingat sekumpulan nilai properti untuk objek.

(Diperoleh dari TypeConverter)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetConvertFromException(Object)

Mengembalikan pengecualian untuk dilemparkan ketika konversi tidak dapat dilakukan.

(Diperoleh dari TypeConverter)
GetConvertToException(Object, Type)

Mengembalikan pengecualian untuk dilemparkan ketika konversi tidak dapat dilakukan.

(Diperoleh dari TypeConverter)
GetCreateInstanceSupported()

Mengembalikan apakah mengubah nilai pada objek ini memerlukan panggilan ke CreateInstance(IDictionary) metode untuk membuat nilai baru.

(Diperoleh dari TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Mengembalikan apakah mengubah nilai pada objek ini memerlukan panggilan ke CreateInstance(IDictionary) untuk membuat nilai baru, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Mendapatkan kumpulan properti untuk jenis objek yang ditentukan oleh parameter nilai.

GetProperties(ITypeDescriptorContext, Object)

Mengembalikan kumpulan properti untuk jenis array yang ditentukan oleh parameter nilai, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
GetProperties(Object)

Mengembalikan kumpulan properti untuk jenis array yang ditentukan oleh parameter nilai.

(Diperoleh dari TypeConverter)
GetPropertiesSupported()

Mengembalikan apakah objek ini mendukung properti.

(Diperoleh dari TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Mendapatkan nilai yang menunjukkan apakah objek ini mendukung properti menggunakan konteks yang ditentukan.

GetStandardValues()

Mengembalikan kumpulan nilai standar dari konteks default untuk tipe data yang dirancang untuk pengonversi jenis ini.

(Diperoleh dari TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Mengembalikan kumpulan nilai standar untuk tipe data yang dirancang untuk pengonversi jenis ini saat disediakan dengan konteks format.

(Diperoleh dari TypeConverter)
GetStandardValuesExclusive()

Mengembalikan apakah kumpulan nilai standar yang dikembalikan adalah GetStandardValues() daftar eksklusif.

(Diperoleh dari TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Mengembalikan apakah kumpulan nilai standar yang dikembalikan adalah GetStandardValues() daftar eksklusif dari kemungkinan nilai, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
GetStandardValuesSupported()

Mengembalikan apakah objek ini mendukung sekumpulan nilai standar yang dapat dipilih dari daftar.

(Diperoleh dari TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Mengembalikan apakah objek ini mendukung sekumpulan nilai standar yang dapat dipilih dari daftar, menggunakan konteks yang ditentukan.

(Diperoleh dari TypeConverter)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
IsValid(ITypeDescriptorContext, Object)

Mengembalikan apakah objek nilai yang diberikan valid untuk jenis ini dan untuk konteks yang ditentukan.

(Diperoleh dari TypeConverter)
IsValid(Object)

Mengembalikan apakah objek nilai yang diberikan valid untuk jenis ini.

(Diperoleh dari TypeConverter)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
SortProperties(PropertyDescriptorCollection, String[])

Mengurutkan kumpulan properti.

(Diperoleh dari TypeConverter)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga