ConvertEventArgs.DesiredType 属性

获取所需值的数据类型。

**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)

语法

声明
Public ReadOnly Property DesiredType As Type
用法
Dim instance As ConvertEventArgs
Dim value As Type

value = instance.DesiredType
public Type DesiredType { get; }
public:
property Type^ DesiredType {
    Type^ get ();
}
/** @property */
public Type get_DesiredType ()
public function get DesiredType () : Type

属性值

所需值的 Type

备注

DesiredType 属性使您能够检查该值要转换成的属性类型。

示例

下面的代码示例使用 DesiredType 属性确定能否从一种类型转换为另一种类型。DecimalToCurrencyString 方法测试 DesiredType 是否为字符串。如果不是,代码退出该方法。与之类似,CurrencyStringToDecimal 方法测试 DesiredType 是否为 Decimal,并在不为 true 时退出。

Private Sub DecimalToCurrencyString(sender As Object, cevent As ConvertEventArgs)
   ' The method converts only to string type. 
   If Not cevent.DesiredType Is GetType(String) Then
      Return
   End If 
   cevent.Value = CDec(cevent.Value).ToString("c")
End Sub 
 
 
Private Sub CurrencyStringToDecimal(sender As Object, cevent As ConvertEventArgs)
   ' The method converts only to decimal type.
   If Not cevent.DesiredType Is GetType(Decimal) Then
      Return
   End If 
 cevent.Value = Decimal.Parse(cevent.Value.ToString, _
 NumberStyles.Currency, nothing)
End Sub 
private void DecimalToCurrencyString(object sender, ConvertEventArgs cevent)
{
   // The method converts only to string type. 
   if(cevent.DesiredType != typeof(string)) return;

   cevent.Value = ((decimal) cevent.Value).ToString("c");
}

private void CurrencyStringToDecimal(object sender, ConvertEventArgs cevent)
{   
   // The method converts only to decimal type.
   if(cevent.DesiredType != typeof(decimal)) return;

   cevent.Value = Decimal.Parse(cevent.Value.ToString(),
   NumberStyles.Currency, null);
}
private:
   void DecimalToCurrencyString( Object^ /*sender*/, ConvertEventArgs^ cevent )
   {
      // The method converts only to string type. 
      if ( cevent->DesiredType != String::typeid )
      {
         return;
      }

      cevent->Value = ( (Decimal^)(cevent->Value) )->ToString( "c" );
   }

   void CurrencyStringToDecimal( Object^ /*sender*/, ConvertEventArgs^ cevent )
   {
      // The method converts only to decimal type.
      if ( cevent->DesiredType != Decimal::typeid )
      {
         return;
      }

      cevent->Value = Decimal::Parse( cevent->Value->ToString(),
         NumberStyles::Currency, nullptr );
   }
private void DecimalToCurrencyString(Object sender, ConvertEventArgs cevent)
{
    // The method converts only to string type. 
    if (!(cevent.get_DesiredType().Equals(String.class.ToType()))) {
        return ;
    }
    cevent.set_Value(((System.Decimal)cevent.get_Value()).ToString("c"));
} //DecimalToCurrencyString

private void CurrencyStringToDecimal(Object sender, ConvertEventArgs cevent)
{
    // The method converts only to decimal type.
    if (!(cevent.get_DesiredType().Equals( System.Decimal.class.ToType()))) {
        return ;
    }
    cevent.set_Value(Decimal.Parse(cevent.get_Value().ToString(), 
        NumberStyles.Currency, null));
} //CurrencyStringToDecimal

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

ConvertEventArgs 类
ConvertEventArgs 成员
System.Windows.Forms 命名空间