TypeConverter.IsValid Metoda
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.
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu.
Przeciążenia
| Nazwa | Opis |
|---|---|
| IsValid(ITypeDescriptorContext, Object) |
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu i dla określonego kontekstu. |
| IsValid(Object) |
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu. |
IsValid(ITypeDescriptorContext, Object)
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu i dla określonego kontekstu.
public:
virtual bool IsValid(System::ComponentModel::ITypeDescriptorContext ^ context, System::Object ^ value);
public virtual bool IsValid(System.ComponentModel.ITypeDescriptorContext context, object value);
abstract member IsValid : System.ComponentModel.ITypeDescriptorContext * obj -> bool
override this.IsValid : System.ComponentModel.ITypeDescriptorContext * obj -> bool
Public Overridable Function IsValid (context As ITypeDescriptorContext, value As Object) As Boolean
Parametry
- context
- ITypeDescriptorContext
Element ITypeDescriptorContext , który udostępnia kontekst formatu.
Zwraca
true jeśli określona wartość jest prawidłowa dla tego obiektu; w przeciwnym razie, false.
Przykłady
Przykład tej funkcji można znaleźć w TypeConverter klasie .
Uwagi
Użyj parametru , context aby wyodrębnić dodatkowe informacje o środowisku, z którego jest wywoływany ten konwerter. Ten parametr może mieć nullwartość , więc zawsze go sprawdzaj. Ponadto właściwości obiektu kontekstu mogą zwracać wartość null.
Począwszy od programu .NET Framework 4, metoda IsValid przechwytuje wyjątki od metod CanConvertFrom i ConvertFrom. Jeśli typ wartości wejściowej powoduje CanConvertFrom zwrócenie falsewartości , lub jeśli wartość wejściowa powoduje ConvertFrom wystąpienie wyjątku, IsValid metoda zwraca falsewartość .
Aby włączyć starsze zachowanie, wstaw następujące wiersze do pliku konfiguracji aplikacji platformy .NET Framework.
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
Notatki dotyczące dziedziczenia
Zastąpi tę metodę, jeśli typ, który chcesz przekonwertować, obsługuje wartości standardowe, które można zweryfikować.
Metoda IsValid(ITypeDescriptorContext, Object) służy do sprawdzania poprawności wartości w typie, a nie do określenia, czy value można przekonwertować na dany typ. Na przykład można użyć do określenia, IsValid(ITypeDescriptorContext, Object) czy dana wartość jest prawidłowa dla typu wyliczenia. Aby zapoznać się z przykładem, zobacz EnumConverter.
Zobacz też
Dotyczy
IsValid(Object)
Zwraca, czy dany obiekt wartości jest prawidłowy dla tego typu.
public:
bool IsValid(System::Object ^ value);
public bool IsValid(object value);
member this.IsValid : obj -> bool
Public Function IsValid (value As Object) As Boolean
Parametry
- value
- Object
Obiekt do testowania pod kątem ważności.
Zwraca
true jeśli określona wartość jest prawidłowa dla tego obiektu; w przeciwnym razie, false.
Uwagi
Począwszy od programu .NET Framework 4, metoda IsValid przechwytuje wyjątki od metod CanConvertFrom i ConvertFrom. Jeśli typ wartości wejściowej powoduje CanConvertFrom zwrócenie falsewartości , lub jeśli wartość wejściowa powoduje ConvertFrom wystąpienie wyjątku, IsValid metoda zwraca falsewartość .
Aby włączyć starsze zachowanie, wstaw następujące wiersze do pliku konfiguracji aplikacji platformy .NET Framework.
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
Notatki dotyczące dziedziczenia
Zastąpi tę metodę, jeśli typ, który chcesz przekonwertować, obsługuje wartości standardowe, które można zweryfikować.
Metoda IsValid(Object) służy do sprawdzania poprawności wartości w typie, a nie do określenia, czy value można przekonwertować na dany typ. Na przykład można użyć do określenia, IsValid(Object) czy dana wartość jest prawidłowa dla typu wyliczenia. Aby zapoznać się z przykładem, zobacz EnumConverter.
Możesz napisać własną WillConvertSucceed metodę, opakowując ConvertTo metody i ConvertFrom w blokach wyjątków.