簡體   English   中英

用於PropertyDescriptor.Converter的TypeConverter

[英]TypeConverter for PropertyDescriptor.Converter

讓我們考慮數據綁定動態數據中描述的問題。 現在看看Marc Gravell Marc的答案給出的出色解決方案。 Marc提供了不使用TypeConverter的解決方案。 現在該提交我的問題了。 我沒有找到成功的示例代碼,該示例結合了TypeConverterPropertyDescriptor.Converter來解決與此類似的問題。 Marc為字符串提供了一個簡單的解決方案,但是如果我們在其中添加其他類型(例如DateTime,int)怎么辦?

PS我正在使用自己的IBindingListIListITypedListICustomTypeDescriptor實現用於索引器並在UI上包裝對象...但是當涉及TypeConverter以及編程中缺席10年的C#時,我是一個菜鳥世界[必要,但也很快樂]。

最后,我這樣做是這樣的:

  1. 我創建了自己的TypeConverter稱為CharacteristicTypeConverter

  2. 在我的PropertyDescriptor構造函數的實現中,添加了:

    var attrs = new List<Attribute>();
    attrs.Add(new TypeConverterAttribute(typeof(CharacteristicTypeConverter)));
    this.AttributeArray = attrs.ToArray();

  3. 要將上下文傳遞給轉換器,我從這里使用Marc Gravell的技巧: http : //bytes.com/topic/c-sharp/answers/676604-expandableobjectconvertors-typeconverters來實現ITypeDescriptorContext

  4. 在我的PropertyDescriptor實現的GetValue/SetValue ,按如下方式使用轉換器: Converter.ConvertTo(...)Converter.ConvertFrom

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM