ExpandableObjectConverter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece um conversor de tipo para converter objetos expansíveis de e para várias outras representações.
public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
- Herança
- Derivado
Exemplos
O exemplo de código a seguir converte uma variável de tipo Margins em uma variável de cadeia de caracteres.
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))
O exemplo de código a seguir demonstra como usar a classe e a NotifyParentPropertyAttributeExpandableObjectConverter classe para criar uma propriedade expansível em um controle personalizado. Este exemplo de código faz parte de um exemplo maior fornecido para a NotifyParentPropertyAttribute classe.
[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
Comentários
Essa classe adiciona suporte para propriedades em um objeto aos métodos e propriedades fornecidos por TypeConverter. Para tornar um tipo de propriedade expansível no , especifique-o PropertyGridTypeConverter para implementações padrão de GetPropertiesSupported e GetProperties. Marque as propriedades filho com o para garantir o NotifyParentPropertyAttribute comportamento correto em um PropertyGrid controle.
Observação
Você nunca deve acessar um conversor de tipo diretamente. Em vez disso, chame o conversor apropriado usando TypeDescriptor. Para obter mais informações, consulte os exemplos na TypeConverter classe base.
Para obter mais informações sobre conversores de tipo, consulte a TypeConverter classe base.
Construtores
| Nome | Description |
|---|---|
| ExpandableObjectConverter() |
Inicializa uma nova instância da classe ExpandableObjectConverter. |
Métodos
| Nome | Description |
|---|---|
| CanConvertFrom(ITypeDescriptorContext, Type) |
Retorna se esse conversor pode converter um objeto do tipo fornecido para o tipo desse conversor usando o contexto especificado. (Herdado de TypeConverter) |
| CanConvertFrom(Type) |
Retorna se esse conversor pode converter um objeto do tipo fornecido no tipo desse conversor. (Herdado de TypeConverter) |
| CanConvertTo(ITypeDescriptorContext, Type) |
Retorna se esse conversor pode converter o objeto no tipo especificado, usando o contexto especificado. (Herdado de TypeConverter) |
| CanConvertTo(Type) |
Retorna se esse conversor pode converter o objeto no tipo especificado. (Herdado de TypeConverter) |
| ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) |
Converte o objeto fornecido no tipo desse conversor, usando as informações de contexto e cultura especificadas. (Herdado de TypeConverter) |
| ConvertFrom(Object) |
Converte o valor fornecido no tipo desse conversor. (Herdado de TypeConverter) |
| ConvertFromInvariantString(ITypeDescriptorContext, String) |
Converte a cadeia de caracteres fornecida no tipo desse conversor, usando a cultura invariável e o contexto especificado. (Herdado de TypeConverter) |
| ConvertFromInvariantString(String) |
Converte a cadeia de caracteres fornecida no tipo desse conversor, usando a cultura invariável. (Herdado de TypeConverter) |
| ConvertFromString(ITypeDescriptorContext, CultureInfo, String) |
Converte o texto fornecido em um objeto, usando as informações de contexto e cultura especificadas. (Herdado de TypeConverter) |
| ConvertFromString(ITypeDescriptorContext, String) |
Converte o texto fornecido em um objeto usando o contexto especificado. (Herdado de TypeConverter) |
| ConvertFromString(String) |
Converte o texto especificado em um objeto. (Herdado de TypeConverter) |
| ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) |
Converte o objeto de valor fornecido no tipo especificado, usando as informações de contexto e cultura especificadas. (Herdado de TypeConverter) |
| ConvertTo(Object, Type) |
Converte o objeto de valor fornecido no tipo especificado, usando os argumentos. (Herdado de TypeConverter) |
| ConvertToInvariantString(ITypeDescriptorContext, Object) |
Converte o valor especificado em uma representação de cadeia de caracteres invariável de cultura usando o contexto especificado. (Herdado de TypeConverter) |
| ConvertToInvariantString(Object) |
Converte o valor especificado em uma representação de cadeia de caracteres invariável por cultura. (Herdado de TypeConverter) |
| ConvertToString(ITypeDescriptorContext, CultureInfo, Object) |
Converte o valor fornecido em uma representação de cadeia de caracteres usando as informações de contexto e cultura especificadas. (Herdado de TypeConverter) |
| ConvertToString(ITypeDescriptorContext, Object) |
Converte o valor fornecido em uma representação de cadeia de caracteres usando o contexto fornecido. (Herdado de TypeConverter) |
| ConvertToString(Object) |
Converte o valor especificado em uma representação de cadeia de caracteres. (Herdado de TypeConverter) |
| CreateInstance(IDictionary) |
Recria um Object determinado conjunto de valores de propriedade para o objeto. (Herdado de TypeConverter) |
| CreateInstance(ITypeDescriptorContext, IDictionary) |
Cria uma instância do tipo ao qual isso TypeConverter está associado, usando o contexto especificado, dado um conjunto de valores de propriedade para o objeto. (Herdado de TypeConverter) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetConvertFromException(Object) |
Retorna uma exceção a ser gerada quando uma conversão não pode ser executada. (Herdado de TypeConverter) |
| GetConvertToException(Object, Type) |
Retorna uma exceção a ser gerada quando uma conversão não pode ser executada. (Herdado de TypeConverter) |
| GetCreateInstanceSupported() |
Retorna se alterar um valor nesse objeto requer uma chamada para o CreateInstance(IDictionary) método para criar um novo valor. (Herdado de TypeConverter) |
| GetCreateInstanceSupported(ITypeDescriptorContext) |
Retorna se alterar um valor nesse objeto requer uma chamada para CreateInstance(IDictionary) criar um novo valor, usando o contexto especificado. (Herdado de TypeConverter) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetProperties(ITypeDescriptorContext, Object, Attribute[]) |
Obtém uma coleção de propriedades para o tipo de objeto especificado pelo parâmetro de valor. |
| GetProperties(ITypeDescriptorContext, Object) |
Retorna uma coleção de propriedades para o tipo de matriz especificado pelo parâmetro de valor, usando o contexto especificado. (Herdado de TypeConverter) |
| GetProperties(Object) |
Retorna uma coleção de propriedades para o tipo de matriz especificado pelo parâmetro de valor. (Herdado de TypeConverter) |
| GetPropertiesSupported() |
Retorna se esse objeto dá suporte a propriedades. (Herdado de TypeConverter) |
| GetPropertiesSupported(ITypeDescriptorContext) |
Obtém um valor que indica se esse objeto dá suporte a propriedades usando o contexto especificado. |
| GetStandardValues() |
Retorna uma coleção de valores padrão do contexto padrão para o tipo de dados para o qual esse conversor de tipo foi projetado. (Herdado de TypeConverter) |
| GetStandardValues(ITypeDescriptorContext) |
Retorna uma coleção de valores padrão para o tipo de dados para o qual esse conversor de tipo foi projetado quando fornecido com um contexto de formato. (Herdado de TypeConverter) |
| GetStandardValuesExclusive() |
Retorna se a coleção de valores padrão retornados GetStandardValues() é uma lista exclusiva. (Herdado de TypeConverter) |
| GetStandardValuesExclusive(ITypeDescriptorContext) |
Retorna se a coleção de valores padrão retornados GetStandardValues() é uma lista exclusiva de valores possíveis, usando o contexto especificado. (Herdado de TypeConverter) |
| GetStandardValuesSupported() |
Retorna se esse objeto dá suporte a um conjunto padrão de valores que podem ser escolhidos em uma lista. (Herdado de TypeConverter) |
| GetStandardValuesSupported(ITypeDescriptorContext) |
Retorna se esse objeto dá suporte a um conjunto padrão de valores que podem ser escolhidos em uma lista, usando o contexto especificado. (Herdado de TypeConverter) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsValid(ITypeDescriptorContext, Object) |
Retorna se o objeto de valor fornecido é válido para esse tipo e para o contexto especificado. (Herdado de TypeConverter) |
| IsValid(Object) |
Retorna se o objeto de valor fornecido é válido para esse tipo. (Herdado de TypeConverter) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| SortProperties(PropertyDescriptorCollection, String[]) |
Classifica uma coleção de propriedades. (Herdado de TypeConverter) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |