TypeConverter.IsValid Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns whether the given value object is valid for this type.
Overloads
IsValid(ITypeDescriptorContext, Object) |
Returns whether the given value object is valid for this type and for the specified context. |
IsValid(Object) |
Returns whether the given value object is valid for this type. |
IsValid(ITypeDescriptorContext, Object)
- Source:
- TypeConverter.cs
- Source:
- TypeConverter.cs
- Source:
- TypeConverter.cs
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);
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
Parameters
- context
- ITypeDescriptorContext
An ITypeDescriptorContext that provides a format context.
Returns
true
if the specified value is valid for this object; otherwise, false
.
Examples
For an example of this function, see the TypeConverter class.
Remarks
Use the context
parameter to extract additional information about the environment from which this converter is invoked. This parameter can be null
, so always check it. Also, properties on the context object can return null
.
Starting in .NET Framework 4, the IsValid method catches exceptions from the CanConvertFrom and ConvertFrom methods. 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
.
To enable the legacy behavior, insert the following lines into the configuration file of your .NET Framework application.
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
Notes to Inheritors
Override this method if the type you want to convert supports standard values that can be validated.
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. For example, IsValid(ITypeDescriptorContext, Object) can be used to determine if a given value is valid for an enumeration type. For an example, see EnumConverter.
See also
Applies to
IsValid(Object)
- Source:
- TypeConverter.cs
- Source:
- TypeConverter.cs
- Source:
- TypeConverter.cs
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
Parameters
- value
- Object
The object to test for validity.
Returns
true
if the specified value is valid for this object; otherwise, false
.
Remarks
Starting in .NET Framework 4, the IsValid method catches exceptions from the CanConvertFrom and ConvertFrom methods. 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
.
To enable the legacy behavior, insert the following lines into the configuration file of your .NET Framework application.
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
Notes to Inheritors
Override this method if the type you want to convert supports standard values that can be validated.
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. For example, IsValid(Object) can be used to determine if a given value is valid for an enumeration type. For an example, see EnumConverter.
You can write your own WillConvertSucceed
method by wrapping the ConvertTo and ConvertFrom methods in exception blocks.