ExpandableObjectConverter ExpandableObjectConverter ExpandableObjectConverter ExpandableObjectConverter Class

정의

확장할 수 있는 개체와 여러 가지 다른 표현 간에 변환하는 형식 변환기를 제공합니다.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
상속
ExpandableObjectConverterExpandableObjectConverterExpandableObjectConverterExpandableObjectConverter
파생

예제

다음 코드 예제에서는 변환 형식 변수의 Margins 문자열 변수입니다.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))

다음 코드 예제를 사용 하는 방법에 설명 합니다 NotifyParentPropertyAttributeExpandableObjectConverter 클래스 사용자 지정 컨트롤에서 확장 가능한 속성을 만들려고 합니다.The following code example demonstrates how to use the NotifyParentPropertyAttribute and the ExpandableObjectConverter class to create an expandable property on a custom control. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 NotifyParentPropertyAttribute 클래스입니다.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

설명

이 클래스 제공한 속성과 메서드를 개체에 속성에 대 한 지원을 추가 TypeConverter합니다.This class adds support for properties on an object to the methods and properties provided by TypeConverter. 속성의 형식에서 확장할 수 있도록 합니다 PropertyGrid,이 값을 지정 TypeConverter 의 표준 구현을 위한 GetPropertiesSupportedGetProperties합니다.To make a type of property expandable in the PropertyGrid, specify this TypeConverter for standard implementations of GetPropertiesSupported and GetProperties. 사용 하 여 자식 속성을 표시 합니다 NotifyParentPropertyAttribute 에서 올바르게 작동 하려면를 PropertyGrid 제어 합니다.Mark child properties with the NotifyParentPropertyAttribute to ensure correct behavior in a PropertyGrid control.

참고

하지는 형식 변환기를 직접 액세스 해야 합니다.You should never access a type converter directly. 대신 적절 한 변환기를 사용 하 여 호출 TypeDescriptor합니다.Instead, call the appropriate converter by using TypeDescriptor. 자세한 내용은 예제를 참조 합니다 TypeConverter 기본 클래스입니다.For more information, see the examples in the TypeConverter base class.

형식 변환기에 대 한 자세한 내용은 참조는 TypeConverter 기본 클래스 및 방법: 형식 변환기를 구현합니다.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

생성자

ExpandableObjectConverter() ExpandableObjectConverter() ExpandableObjectConverter() ExpandableObjectConverter()

ExpandableObjectConverter 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ExpandableObjectConverter class.

메서드

CanConvertFrom(ITypeDescriptorContext, Type) CanConvertFrom(ITypeDescriptorContext, Type) CanConvertFrom(ITypeDescriptorContext, Type) CanConvertFrom(ITypeDescriptorContext, Type)

지정된 컨텍스트를 사용하여 이 변환기가 지정된 형식의 개체를 이 변환기의 형식으로 변환할 수 있는지 여부를 반환합니다.Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context.

(Inherited from TypeConverter)
CanConvertFrom(Type) CanConvertFrom(Type) CanConvertFrom(Type) CanConvertFrom(Type)

이 변환기가 지정된 형식의 개체를 이 변환기의 형식으로 변환할 수 있는지 여부를 반환합니다.Returns whether this converter can convert an object of the given type to the type of this converter.

(Inherited from TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type) CanConvertTo(ITypeDescriptorContext, Type) CanConvertTo(ITypeDescriptorContext, Type) CanConvertTo(ITypeDescriptorContext, Type)

지정된 컨텍스트를 사용하여 이 변환기에서 개체를 지정된 형식으로 변환할 수 있는지 여부를 반환합니다.Returns whether this converter can convert the object to the specified type, using the specified context.

(Inherited from TypeConverter)
CanConvertTo(Type) CanConvertTo(Type) CanConvertTo(Type) CanConvertTo(Type)

이 변환기가 개체를 지정된 형식으로 변환할 수 있는지 여부를 반환합니다.Returns whether this converter can convert the object to the specified type.

(Inherited from TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

지정된 컨텍스트 및 문화권 정보를 사용하여 지정된 개체를 이 변환기 형식으로 변환합니다.Converts the given object to the type of this converter, using the specified context and culture information.

(Inherited from TypeConverter)
ConvertFrom(Object) ConvertFrom(Object) ConvertFrom(Object) ConvertFrom(Object)

지정된 값을 이 변환기의 형식으로 변환합니다.Converts the given value to the type of this converter.

(Inherited from TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String) ConvertFromInvariantString(ITypeDescriptorContext, String) ConvertFromInvariantString(ITypeDescriptorContext, String) ConvertFromInvariantString(ITypeDescriptorContext, String)

고정 문화권 및 지정된 컨텍스트를 사용하여 지정된 문자열을 이 변환기의 형식으로 변환합니다.Converts the given string to the type of this converter, using the invariant culture and the specified context.

(Inherited from TypeConverter)
ConvertFromInvariantString(String) ConvertFromInvariantString(String) ConvertFromInvariantString(String) ConvertFromInvariantString(String)

고정 문화권을 사용하여, 지정된 문자열을 이 변환기의 형식으로 변환합니다.Converts the given string to the type of this converter, using the invariant culture.

(Inherited from TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String) ConvertFromString(ITypeDescriptorContext, CultureInfo, String) ConvertFromString(ITypeDescriptorContext, CultureInfo, String) ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

지정된 컨텍스트 및 문화권 정보를 사용하여, 지정된 텍스트를 개체로 변환합니다.Converts the given text to an object, using the specified context and culture information.

(Inherited from TypeConverter)
ConvertFromString(ITypeDescriptorContext, String) ConvertFromString(ITypeDescriptorContext, String) ConvertFromString(ITypeDescriptorContext, String) ConvertFromString(ITypeDescriptorContext, String)

지정된 컨텍스트를 사용하여, 지정된 텍스트를 개체로 변환합니다.Converts the given text to an object, using the specified context.

(Inherited from TypeConverter)
ConvertFromString(String) ConvertFromString(String) ConvertFromString(String) ConvertFromString(String)

지정된 텍스트를 개체로 변환합니다.Converts the specified text to an object.

(Inherited from TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

지정된 컨텍스트 및 문화권 정보를 사용하여 지정된 값 개체를 지정된 형식으로 변환합니다.Converts the given value object to the specified type, using the specified context and culture information.

(Inherited from TypeConverter)
ConvertTo(Object, Type) ConvertTo(Object, Type) ConvertTo(Object, Type) ConvertTo(Object, Type)

인수를 사용하여, 지정된 값 개체를 지정된 형식으로 변환합니다.Converts the given value object to the specified type, using the arguments.

(Inherited from TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object) ConvertToInvariantString(ITypeDescriptorContext, Object) ConvertToInvariantString(ITypeDescriptorContext, Object) ConvertToInvariantString(ITypeDescriptorContext, Object)

지정된 context를 사용하여, 지정된 값을 고정 문화권의 문자열 표현으로 변환합니다.Converts the specified value to a culture-invariant string representation, using the specified context.

(Inherited from TypeConverter)
ConvertToInvariantString(Object) ConvertToInvariantString(Object) ConvertToInvariantString(Object) ConvertToInvariantString(Object)

지정된 값을 고정 문화권의 문자열 표현으로 변환합니다.Converts the specified value to a culture-invariant string representation.

(Inherited from TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object) ConvertToString(ITypeDescriptorContext, CultureInfo, Object) ConvertToString(ITypeDescriptorContext, CultureInfo, Object) ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

지정된 컨텍스트 및 문화권 정보를 사용하여, 지정된 값을 문자열 표현으로 변환합니다.Converts the given value to a string representation, using the specified context and culture information.

(Inherited from TypeConverter)
ConvertToString(ITypeDescriptorContext, Object) ConvertToString(ITypeDescriptorContext, Object) ConvertToString(ITypeDescriptorContext, Object) ConvertToString(ITypeDescriptorContext, Object)

지정된 컨텍스트를 사용하여, 지정된 값을 문자열 표현으로 변환합니다.Converts the given value to a string representation, using the given context.

(Inherited from TypeConverter)
ConvertToString(Object) ConvertToString(Object) ConvertToString(Object) ConvertToString(Object)

지정된 값을 문자열 표현으로 변환합니다.Converts the specified value to a string representation.

(Inherited from TypeConverter)
CreateInstance(IDictionary) CreateInstance(IDictionary) CreateInstance(IDictionary) CreateInstance(IDictionary)

개체의 속성 값 집합이 지정된 Object를 다시 만듭니다.Re-creates an Object given a set of property values for the object.

(Inherited from TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary) CreateInstance(ITypeDescriptorContext, IDictionary) CreateInstance(ITypeDescriptorContext, IDictionary) CreateInstance(ITypeDescriptorContext, IDictionary)

지정된 컨텍스트를 사용하여 이 TypeConverter가 연결된 형식의 인스턴스를 만들어 개체의 속성 값 집합을 제공합니다.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.

(Inherited from TypeConverter)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetConvertFromException(Object) GetConvertFromException(Object) GetConvertFromException(Object) GetConvertFromException(Object)

변환을 수행할 수 없을 때 throw되는 예외를 반환합니다.Returns an exception to throw when a conversion cannot be performed.

(Inherited from TypeConverter)
GetConvertToException(Object, Type) GetConvertToException(Object, Type) GetConvertToException(Object, Type) GetConvertToException(Object, Type)

변환을 수행할 수 없을 때 throw되는 예외를 반환합니다.Returns an exception to throw when a conversion cannot be performed.

(Inherited from TypeConverter)
GetCreateInstanceSupported() GetCreateInstanceSupported() GetCreateInstanceSupported() GetCreateInstanceSupported()

이 개체의 값을 변경할 때 CreateInstance(IDictionary) 메서드를 호출하여 새 값을 만들어야 하는지 여부를 반환합니다.Returns whether changing a value on this object requires a call to the CreateInstance(IDictionary) method to create a new value.

(Inherited from TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext) GetCreateInstanceSupported(ITypeDescriptorContext) GetCreateInstanceSupported(ITypeDescriptorContext) GetCreateInstanceSupported(ITypeDescriptorContext)

이 개체의 값을 변경할 때 CreateInstance(IDictionary)를 호출하여 지정된 컨텍스트로 새 값을 만들어야 하는지 여부를 반환합니다.Returns whether changing a value on this object requires a call to CreateInstance(IDictionary) to create a new value, using the specified context.

(Inherited from TypeConverter)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetProperties(ITypeDescriptorContext, Object) GetProperties(ITypeDescriptorContext, Object) GetProperties(ITypeDescriptorContext, Object) GetProperties(ITypeDescriptorContext, Object)

지정된 컨텍스트를 사용하여, 값 매개 변수로 지정한 배열 형식에 대한 속성 컬렉션을 반환합니다.Returns a collection of properties for the type of array specified by the value parameter, using the specified context.

(Inherited from TypeConverter)
GetProperties(ITypeDescriptorContext, Object, Attribute[]) GetProperties(ITypeDescriptorContext, Object, Attribute[]) GetProperties(ITypeDescriptorContext, Object, Attribute[]) GetProperties(ITypeDescriptorContext, Object, Attribute[])

값 매개 변수로 지정된 개체의 형식에 대한 속성 컬렉션을 가져옵니다.Gets a collection of properties for the type of object specified by the value parameter.

GetProperties(Object) GetProperties(Object) GetProperties(Object) GetProperties(Object)

값 매개 변수로 지정된 배열 형식에 대한 속성 컬렉션을 반환합니다.Returns a collection of properties for the type of array specified by the value parameter.

(Inherited from TypeConverter)
GetPropertiesSupported() GetPropertiesSupported() GetPropertiesSupported() GetPropertiesSupported()

이 개체가 속성을 지원하는지 여부를 반환합니다.Returns whether this object supports properties.

(Inherited from TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext) GetPropertiesSupported(ITypeDescriptorContext) GetPropertiesSupported(ITypeDescriptorContext) GetPropertiesSupported(ITypeDescriptorContext)

지정된 컨텍스트를 사용하여, 이 개체에서 속성을 지원하는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether this object supports properties using the specified context.

GetStandardValues() GetStandardValues() GetStandardValues() GetStandardValues()

이 형식 변환기를 사용하도록 디자인된 데이터 형식의 기본 컨텍스트에서 표준 값 컬렉션을 반환합니다.Returns a collection of standard values from the default context for the data type this type converter is designed for.

(Inherited from TypeConverter)
GetStandardValues(ITypeDescriptorContext) GetStandardValues(ITypeDescriptorContext) GetStandardValues(ITypeDescriptorContext) GetStandardValues(ITypeDescriptorContext)

형식 컨텍스트가 제공될 때 이 형식 변환기를 사용하도록 디자인된 데이터 형식의 표준 값 컬렉션을 반환합니다.Returns a collection of standard values for the data type this type converter is designed for when provided with a format context.

(Inherited from TypeConverter)
GetStandardValuesExclusive() GetStandardValuesExclusive() GetStandardValuesExclusive() GetStandardValuesExclusive()

GetStandardValues()에서 반환된 표준 값 컬렉션이 단독 목록인지 여부를 반환합니다.Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list.

(Inherited from TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext) GetStandardValuesExclusive(ITypeDescriptorContext) GetStandardValuesExclusive(ITypeDescriptorContext) GetStandardValuesExclusive(ITypeDescriptorContext)

지정된 컨텍스트를 사용하여, GetStandardValues()에서 반환된 표준 값 컬렉션이 가능한 값에 대한 단독 목록인지 여부를 반환합니다.Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list of possible values, using the specified context.

(Inherited from TypeConverter)
GetStandardValuesSupported() GetStandardValuesSupported() GetStandardValuesSupported() GetStandardValuesSupported()

이 개체가 목록에서 선택할 수 있는 표준 값 집합을 지원하는지 여부를 반환합니다.Returns whether this object supports a standard set of values that can be picked from a list.

(Inherited from TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext) GetStandardValuesSupported(ITypeDescriptorContext) GetStandardValuesSupported(ITypeDescriptorContext) GetStandardValuesSupported(ITypeDescriptorContext)

지정된 컨텍스트를 사용하여, 이 개체가 목록에서 선택할 수 있는 표준 값 집합을 지원하는지 여부를 반환합니다.Returns whether this object supports a standard set of values that can be picked from a list, using the specified context.

(Inherited from TypeConverter)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
IsValid(ITypeDescriptorContext, Object) IsValid(ITypeDescriptorContext, Object) IsValid(ITypeDescriptorContext, Object) IsValid(ITypeDescriptorContext, Object)

지정된 값 개체를 이 형식 및 지정된 컨텍스트에 사용할 수 있는지 여부를 반환합니다.Returns whether the given value object is valid for this type and for the specified context.

(Inherited from TypeConverter)
IsValid(Object) IsValid(Object) IsValid(Object) IsValid(Object)

지정된 값 개체를 이 형식에 사용할 수 있는지 여부를 반환합니다.Returns whether the given value object is valid for this type.

(Inherited from TypeConverter)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
SortProperties(PropertyDescriptorCollection, String[]) SortProperties(PropertyDescriptorCollection, String[]) SortProperties(PropertyDescriptorCollection, String[]) SortProperties(PropertyDescriptorCollection, String[])

속성 컬렉션을 정렬합니다.Sorts a collection of properties.

(Inherited from TypeConverter)
ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)

적용 대상

추가 정보