2016-09-19 11 views
0

C#では、オブジェクト型のプロパティがあり、オブジェクトの型を知っていますが、プロパティの既定のTypeConverterをどのように表示できますか? ValueTypeプロパティがブール値であれば、どのように私は、Valueプロパティにブール値のデフォルトのTypeConverterを表示することができ、上記のコードで特定のタイプのTypeConverterを追加するにはどうすればよいですか?

private Type _valueType { get; set; } 
public Type ValueType 
{ 
    get 
    { 
     return _valueType; 
    } 
    set 
    { 
     _valueType = value; 
    } 
} 
private object _value { get; set; } 
public object Value 
{ 
    get 
    { 
     return _value; 
    } 
    set 
    { 
     _value = value; 
    } 
} 

:ここ

はいくつかのコードですか?

これは、PropertyGridオブジェクトのSelectedObject用です。

答えて

0

私は必要なコードを見つけました。

ここでは、次のとおりです。

public TypeConverter GetValueTypeConverter() 
{ 
    TypeConverter typeConverter = TypeDescriptor.GetConverter(_valueType); 
    return typeConverter; 
} 
0

私はあなたがthrough the use of Generics探している効果を得ることができ予感を持っている:あなたのクラスのインスタンスは、その後、(例えばブール値のための)指定された型を使用して作成することができます

class GenericsExample<T>{ 

    private T _value { get; set; } 
    public T Value 
    { 
     get 
     { 
      return _value; 
     } 
     set 
     { 
      _value = value; 
     } 
    } 

} 

、および変数任意のそのタイプのは、あなたのクラスから返すことができます。

class Program 
{ 

    static void Main() 
    { 
     var genericsExample = new GenericsExample<bool>(); 
     genericsExample.Value = true; 
     Console.WriteLine("Value is " + genericsExample.Value); 
    } 
} 

は、あなたがどこを探しているものの線に沿って、このですか?

+0

https://msdn.microsoft.com/en-us/library/system.componentmodel.booleanconverter(v=vs.110).aspx –

+1

ありがとうございます。私は、ジェネリックを使わずに必要なことをするもっと簡単な方法を見つけました。 – user3736648

関連する問題