ExpandableObjectConverter Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia konwerter typów do konwertowania obiektów rozszerzalnych na i z różnych innych reprezentacji.
public ref class ExpandableObjectConverter : System::ComponentModel::TypeConverter
public class ExpandableObjectConverter : System.ComponentModel.TypeConverter
type ExpandableObjectConverter = class
inherit TypeConverter
Public Class ExpandableObjectConverter
Inherits TypeConverter
- Dziedziczenie
- Pochodne
Przykłady
Poniższy przykład kodu konwertuje zmienną typu Margins na zmienną ciągu.
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))
W poniższym przykładzie kodu pokazano, jak za pomocą NotifyParentPropertyAttribute klasy i ExpandableObjectConverter utworzyć właściwość rozszerzalną w kontrolce niestandardowej. Ten przykład kodu jest częścią większego przykładu udostępnionego NotifyParentPropertyAttribute dla klasy .
[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
Uwagi
Ta klasa dodaje obsługę właściwości obiektu do metod i właściwości dostarczonych przez TypeConverterprogram . Aby rozszerzyć typ właściwości w PropertyGridpliku , określ ten TypeConverter typ dla standardowych implementacji elementów GetPropertiesSupported i GetProperties. Oznacz właściwości podrzędne za pomocą elementu , NotifyParentPropertyAttribute aby zapewnić prawidłowe zachowanie w kontrolce PropertyGrid .
Uwaga
Nigdy nie należy uzyskiwać bezpośredniego dostępu do konwertera typów. Zamiast tego wywołaj odpowiedni konwerter przy użyciu polecenia TypeDescriptor. Aby uzyskać więcej informacji, zobacz przykłady w klasie bazowej TypeConverter .
Aby uzyskać więcej informacji na temat konwerterów typów, zobacz klasę TypeConverter bazową i Instrukcje: Implementowanie konwertera typów.
Konstruktory
ExpandableObjectConverter() |
Inicjuje nowe wystąpienie klasy ExpandableObjectConverter. |
Metody
CanConvertFrom(ITypeDescriptorContext, Type) |
Zwraca, czy ten konwerter może przekonwertować obiekt danego typu na typ tego konwertera przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
CanConvertFrom(Type) |
Zwraca, czy ten konwerter może przekonwertować obiekt danego typu na typ tego konwertera. (Odziedziczone po TypeConverter) |
CanConvertTo(ITypeDescriptorContext, Type) |
Zwraca, czy ten konwerter może przekonwertować obiekt na określony typ przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
CanConvertTo(Type) |
Zwraca, czy ten konwerter może przekonwertować obiekt na określony typ. (Odziedziczone po TypeConverter) |
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) |
Konwertuje dany obiekt na typ tego konwertera przy użyciu określonych informacji o kontekście i kulturze. (Odziedziczone po TypeConverter) |
ConvertFrom(Object) |
Konwertuje daną wartość na typ tego konwertera. (Odziedziczone po TypeConverter) |
ConvertFromInvariantString(ITypeDescriptorContext, String) |
Konwertuje dany ciąg na typ tego konwertera przy użyciu niezmiennej kultury i określonego kontekstu. (Odziedziczone po TypeConverter) |
ConvertFromInvariantString(String) |
Konwertuje dany ciąg na typ tego konwertera przy użyciu niezmiennej kultury. (Odziedziczone po TypeConverter) |
ConvertFromString(ITypeDescriptorContext, CultureInfo, String) |
Konwertuje dany tekst na obiekt przy użyciu określonego kontekstu i informacji o kulturze. (Odziedziczone po TypeConverter) |
ConvertFromString(ITypeDescriptorContext, String) |
Konwertuje dany tekst na obiekt przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
ConvertFromString(String) |
Konwertuje określony tekst na obiekt. (Odziedziczone po TypeConverter) |
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) |
Konwertuje dany obiekt wartości na określony typ przy użyciu określonych informacji o kontekście i kulturze. (Odziedziczone po TypeConverter) |
ConvertTo(Object, Type) |
Konwertuje dany obiekt wartości na określony typ przy użyciu argumentów. (Odziedziczone po TypeConverter) |
ConvertToInvariantString(ITypeDescriptorContext, Object) |
Konwertuje określoną wartość na niezmienną reprezentację ciągu kultury przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
ConvertToInvariantString(Object) |
Konwertuje określoną wartość na niezmienną reprezentację ciągu kultury. (Odziedziczone po TypeConverter) |
ConvertToString(ITypeDescriptorContext, CultureInfo, Object) |
Konwertuje daną wartość na reprezentację ciągu przy użyciu określonego kontekstu i informacji o kulturze. (Odziedziczone po TypeConverter) |
ConvertToString(ITypeDescriptorContext, Object) |
Konwertuje daną wartość na reprezentację ciągu przy użyciu danego kontekstu. (Odziedziczone po TypeConverter) |
ConvertToString(Object) |
Konwertuje określoną wartość na reprezentację ciągu. (Odziedziczone po TypeConverter) |
CreateInstance(IDictionary) |
Ponownie tworzy Object zestaw wartości właściwości dla obiektu. (Odziedziczone po TypeConverter) |
CreateInstance(ITypeDescriptorContext, IDictionary) |
Tworzy wystąpienie typu skojarzonego TypeConverter z określonym kontekstem, biorąc pod uwagę zestaw wartości właściwości dla obiektu. (Odziedziczone po TypeConverter) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetConvertFromException(Object) |
Zwraca wyjątek zgłaszany, gdy nie można wykonać konwersji. (Odziedziczone po TypeConverter) |
GetConvertToException(Object, Type) |
Zwraca wyjątek zgłaszany, gdy nie można wykonać konwersji. (Odziedziczone po TypeConverter) |
GetCreateInstanceSupported() |
Zwraca, czy zmiana wartości w tym obiekcie wymaga wywołania CreateInstance(IDictionary) metody w celu utworzenia nowej wartości. (Odziedziczone po TypeConverter) |
GetCreateInstanceSupported(ITypeDescriptorContext) |
Zwraca, czy zmiana wartości w tym obiekcie wymaga wywołania w celu CreateInstance(IDictionary) utworzenia nowej wartości przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetProperties(ITypeDescriptorContext, Object, Attribute[]) |
Pobiera kolekcję właściwości dla typu obiektu określonego przez parametr value. |
GetProperties(ITypeDescriptorContext, Object) |
Zwraca kolekcję właściwości dla typu tablicy określonej przez parametr value przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
GetProperties(Object) |
Zwraca kolekcję właściwości dla typu tablicy określonej przez parametr value. (Odziedziczone po TypeConverter) |
GetPropertiesSupported() |
Zwraca informację, czy ten obiekt obsługuje właściwości. (Odziedziczone po TypeConverter) |
GetPropertiesSupported(ITypeDescriptorContext) |
Pobiera wartość wskazującą, czy ten obiekt obsługuje właściwości przy użyciu określonego kontekstu. |
GetStandardValues() |
Zwraca kolekcję wartości standardowych z domyślnego kontekstu dla typu danych, dla których ten konwerter typów jest przeznaczony. (Odziedziczone po TypeConverter) |
GetStandardValues(ITypeDescriptorContext) |
Zwraca kolekcję wartości standardowych dla typu danych, dla których ten konwerter typów jest przeznaczony w przypadku, gdy jest dostarczany z kontekstem formatu. (Odziedziczone po TypeConverter) |
GetStandardValuesExclusive() |
Zwraca, czy kolekcja wartości standardowych zwracanych z GetStandardValues() listy jest listą wyłączną. (Odziedziczone po TypeConverter) |
GetStandardValuesExclusive(ITypeDescriptorContext) |
Zwraca, czy kolekcja wartości standardowych zwracanych z GetStandardValues() funkcji jest wyłączną listą możliwych wartości przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
GetStandardValuesSupported() |
Zwraca informację, czy ten obiekt obsługuje standardowy zestaw wartości, które można wybrać z listy. (Odziedziczone po TypeConverter) |
GetStandardValuesSupported(ITypeDescriptorContext) |
Zwraca informację, czy ten obiekt obsługuje standardowy zestaw wartości, które można wybrać z listy przy użyciu określonego kontekstu. (Odziedziczone po TypeConverter) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
IsValid(ITypeDescriptorContext, Object) |
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu i dla określonego kontekstu. (Odziedziczone po TypeConverter) |
IsValid(Object) |
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu. (Odziedziczone po TypeConverter) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
SortProperties(PropertyDescriptorCollection, String[]) |
Sortuje kolekcję właściwości. (Odziedziczone po TypeConverter) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |