TypeConverter.IsValid Metoda

Definicja

Zwraca czy dany obiekt wartości jest prawidłowy dla tego typu.Returns whether the given value object is valid for this type.

Przeciążenia

IsValid(ITypeDescriptorContext, Object)

Zwraca czy dany obiekt wartości jest prawidłowy dla tego typu i dla określonego kontekstu.Returns whether the given value object is valid for this type and for the specified context.

IsValid(Object)

Zwraca czy dany obiekt wartości jest prawidłowy dla tego typu.Returns whether the given value object is valid for this type.

IsValid(ITypeDescriptorContext, Object)

Zwraca czy dany obiekt wartości jest prawidłowy dla tego typu i dla określonego kontekstu.Returns whether the given value object is valid for this type and for the specified context.

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

ITypeDescriptorContextZawiera kontekst formatu.An ITypeDescriptorContext that provides a format context.

value
Object

ObjectAby sprawdzić poprawność.The Object to test for validity.

Zwraca

Boolean

true Jeśli określona wartość jest prawidłowa dla tego obiektu; w przeciwnym razie false .true if the specified value is valid for this object; otherwise, false.

Przykłady

Aby zapoznać się z przykładem tej funkcji, zobacz TypeConverter Klasa.For an example of this function, see the TypeConverter class.

Uwagi

Użyj context parametru, aby wyodrębnić dodatkowe informacje o środowisku, z którego ten konwerter jest wywoływany.Use the context parameter to extract additional information about the environment from which this converter is invoked. Ten parametr może być null , więc zawsze sprawdzaj.This parameter can be null, so always check it. Ponadto właściwości obiektu kontekstu mogą zwrócić null .Also, properties on the context object can return null.

Począwszy od .NET Framework 4, IsValid Metoda przechwytuje wyjątki z CanConvertFrom metod i ConvertFrom .Starting in .NET Framework 4, the IsValid method catches exceptions from the CanConvertFrom and ConvertFrom methods. Jeśli typ wartości wejściowej powoduje CanConvertFrom zwrócenie false lub jeśli wartość wejściowa powoduje wygenerowanie ConvertFrom wyjątku, IsValid Metoda zwraca false .If the input value type causes CanConvertFrom to return false, or if the input value causes ConvertFrom to raise an exception, the IsValid method returns false.

Aby włączyć starsze zachowanie, Wstaw następujące wiersze do pliku konfiguracji aplikacji, na przykład application1.exe.config.To enable the legacy behavior, insert the following lines into the configuration file of the application, for example, application1.exe.config.

<configuration>  
  <appSettings>  
    <add key="UseCompatibleTypeConverterBehavior" value="true" />  
  </appSettings>  
</configuration>  

Uwagi dotyczące dziedziczenia

Zastąp tę metodę, jeśli typ, który ma zostać przekonwertowany, obsługuje wartości standardowe, które można zweryfikować.Override this method if the type you want to convert supports standard values that can be validated.

IsValid(ITypeDescriptorContext, Object)Metoda jest używana do walidacji wartości w typie, a nie do określenia, czy value można ją przekonwertować na dany typ.The IsValid(ITypeDescriptorContext, Object) method is used to validate a value within the type rather than to determine if value can be converted to the given type. Na przykład IsValid(ITypeDescriptorContext, Object) może służyć do określenia, czy dana wartość jest prawidłowa dla typu wyliczenia.For example, IsValid(ITypeDescriptorContext, Object) can be used to determine if a given value is valid for an enumeration type. Aby zapoznać się z przykładem, zobacz EnumConverter .For an example, see EnumConverter.

Zobacz też

Dotyczy

IsValid(Object)

Zwraca czy dany obiekt wartości jest prawidłowy dla tego typu.Returns whether the given value object is valid for this type.

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 przetestowania pod kątem ważności.The object to test for validity.

Zwraca

Boolean

true Jeśli określona wartość jest prawidłowa dla tego obiektu; w przeciwnym razie false .true if the specified value is valid for this object; otherwise, false.

Uwagi

Począwszy od .NET Framework 4, IsValid Metoda przechwytuje wyjątki z CanConvertFrom metod i ConvertFrom .Starting in .NET Framework 4, the IsValid method catches exceptions from the CanConvertFrom and ConvertFrom methods. Jeśli typ wartości wejściowej powoduje CanConvertFrom zwrócenie false lub jeśli wartość wejściowa powoduje wygenerowanie ConvertFrom wyjątku, IsValid Metoda zwraca false .If the input value type causes CanConvertFrom to return false, or if the input value causes ConvertFrom to raise an exception, the IsValid method returns false.

Aby włączyć starsze zachowanie, Wstaw następujące wiersze do pliku konfiguracji aplikacji, na przykład application1.exe.config.To enable the legacy behavior, insert the following lines into the configuration file of the application, for example, application1.exe.config.

<configuration>  
  <appSettings>  
    <add key="UseCompatibleTypeConverterBehavior" value="true" />  
  </appSettings>  
</configuration>  

Uwagi dotyczące dziedziczenia

Zastąp tę metodę, jeśli typ, który ma zostać przekonwertowany, obsługuje wartości standardowe, które można zweryfikować.Override this method if the type you want to convert supports standard values that can be validated.

IsValid(Object)Metoda jest używana do walidacji wartości w typie, a nie do określenia, czy value można ją przekonwertować na dany typ.The IsValid(Object) method is used to validate a value within the type rather than to determine if value can be converted to the given type. Na przykład IsValid(Object) może służyć do określenia, czy dana wartość jest prawidłowa dla typu wyliczenia.For example, IsValid(Object) can be used to determine if a given value is valid for an enumeration type. Aby zapoznać się z przykładem, zobacz EnumConverter .For an example, see EnumConverter.

Można napisać własną metodę WillConvertSucceed , zawijając ConvertTo ConvertFrom metody i w blokach wyjątków.You can write your own WillConvertSucceed method by wrapping the ConvertTo and ConvertFrom methods in exception blocks.

Zobacz też

Dotyczy