TypeConverter.IsValid 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
會傳回指定值物件是否對這個型別有效。
多載
IsValid(ITypeDescriptorContext, Object) |
傳回指定值物件對這個類型和指定的內容是否有效。 |
IsValid(Object) |
會傳回指定值物件是否對這個型別有效。 |
IsValid(ITypeDescriptorContext, Object)
傳回指定值物件對這個類型和指定的內容是否有效。
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
參數
- context
- ITypeDescriptorContext
提供格式內容的 ITypeDescriptorContext。
傳回
如果指定的值對這個物件有效,則為 true
;否則為 false
。
範例
如需此函式的範例,請參閱 TypeConverter 類別。
備註
context
參數可以用於擷取環境的其他資訊,而這個轉換子就是從該環境叫用的。 此參數可以是 null
,因此請一律檢查它。 甚至,內容物件上的屬性可能會傳回 null
。
從 .NET Framework 4 開始,方法會IsValid攔截 和 ConvertFrom 方法的CanConvertFrom例外狀況。 如果輸入值類型造成 CanConvertFrom 傳回 false
,或輸入值造成 ConvertFrom 引發例外狀況,則 IsValid 方法會傳 false
回 。
若要啟用舊版行為,請將下列幾行插入 .NET Framework 應用程式的組態檔中。
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
給繼承者的注意事項
如果您想要轉換的類型支援可驗證的標準值,請覆寫這個方法。
方法 IsValid(ITypeDescriptorContext, Object) 可用來驗證型別內的值,而不是判斷是否可以 value
轉換成指定的型別。 例如, IsValid(ITypeDescriptorContext, Object) 可用來判斷指定的值是否對列舉型別有效。 如需範例,請參閱 EnumConverter。
另請參閱
適用於
IsValid(Object)
會傳回指定值物件是否對這個型別有效。
public:
bool IsValid(System::Object ^ value);
public bool IsValid (object value);
member this.IsValid : obj -> bool
Public Function IsValid (value As Object) As Boolean
參數
- value
- Object
要測試有效性的物件。
傳回
如果指定的值對這個物件有效,則為 true
;否則為 false
。
備註
從 .NET Framework 4 開始,方法會IsValid攔截 和 ConvertFrom 方法的CanConvertFrom例外狀況。 如果輸入值類型造成 CanConvertFrom 傳回 false
,或輸入值造成 ConvertFrom 引發例外狀況,則 IsValid 方法會傳 false
回 。
若要啟用舊版行為,請將下列幾行插入 .NET Framework 應用程式的組態檔中。
<configuration>
<appSettings>
<add key="UseCompatibleTypeConverterBehavior" value="true" />
</appSettings>
</configuration>
給繼承者的注意事項
如果您想要轉換的類型支援可驗證的標準值,請覆寫這個方法。
方法 IsValid(Object) 可用來驗證型別內的值,而不是判斷是否可以 value
轉換成指定的型別。 例如, IsValid(Object) 可用來判斷指定的值是否對列舉型別有效。 如需範例,請參閱 EnumConverter。
您可以將 和 ConvertFrom 方法包裝ConvertTo在例外狀況區塊中,以撰寫自己的WillConvertSucceed
方法。