我似乎無法在任何地方找到答案。 3.5框架PropertyGrid控件中構建了哪些默認編輯器/轉換器。否則,我可以拋出哪些對象類型,並且能夠可靠地顯示和編輯?我發現了很多關於使用自定義編輯器的教程(我可能在某些時候會這樣做)。但現在在我的程序中,我允許用戶創建自己的自定義屬性,我想知道我應該允許哪些對象類型,假設他們將在PropertyGrid中編輯它們。PropertyGrid控件的默認內置編輯器
11
A
回答
4
你可能想看看是派生從UITypeEditor
(在System.Drawing.Design
namespace)班。這些類型將作爲參數傳遞給EditorAttribute
(在System.ComponentModel
namespace中)。
您也可以看看元數據,看看應用EditorAttribute
類型。但是,不要在這裏使用反射,因爲這不是什麼PropertyGrid
class使用。
而是使用TypeDescriptor
class來獲取類型屬性的屬性描述符(稱爲靜態GetProperties
method)。然後,使用PropertyDescriptor
實例,調用GetEditor
method以獲取該屬性的編輯器實例。
1
實際上,你可以在PropertyGrid中拋出任何對象。它會自動完成很多事情。如果你想有一個特殊的編輯體驗,那麼你只需要創建自定義的UI類型編輯器。即使在這種情況下,你也是按照屬性來做,而不是爲了整個對象。
1
PropertyGrid中使用類型轉換器和存在用於每個原語類型類型轉換器(以及原始類型的集合)。
只要你使用的基本類型的一個或原始類型的集合屬性網格應該能夠採取提供編輯UI的照顧。
1
此外UITypeEditors,PropertyGrid中能夠與用於CanConvertFrom(字符串)返回true的TypeConverter,以顯示任何對象。您可以爲特定的對象類型實現自己的TypeConverters,以完成此操作。
7
請記住,有一些非公開課。
System.Object
System.Drawing.Design.UITypeEditor
System.ComponentModel.Design.CollectionEditor
System.ComponentModel.Design.ArrayEditor
System.Web.UI.Design.CollectionEditorBase
System.Web.UI.Design.WebControls.WizardStepCollectionEditor
System.Web.UI.Design.WebControls.EmbeddedMailObjectCollectionEditor
System.Web.UI.Design.WebControls.HotSpotCollectionEditor
System.Web.UI.Design.WebControls.ListItemsCollectionEditor
System.Web.UI.Design.WebControls.MenuItemStyleCollectionEditor
System.Web.UI.Design.WebControls.RoleGroupCollectionEditor
System.Web.UI.Design.WebControls.StyleCollectionEditor
System.Web.UI.Design.WebControls.SubMenuStyleCollectionEditor
System.Web.UI.Design.WebControls.TableCellsCollectionEditor
System.Web.UI.Design.WebControls.TableRowsCollectionEditor
System.ComponentModel.Design.BinaryEditor
System.ComponentModel.Design.DateTimeEditor
System.ComponentModel.Design.MultilineStringEditor
System.ComponentModel.Design.ObjectSelectorEditor
System.Windows.Forms.Design.AnchorEditor
System.Windows.Forms.Design.BorderSidesEditor
System.Windows.Forms.Design.DockEditor
System.Windows.Forms.Design.FileNameEditor
System.Windows.Forms.Design.FolderNameEditor
System.Windows.Forms.Design.ShortcutKeysEditor
System.Web.UI.Design.ConnectionStringEditor
System.Web.UI.Design.DataBindingCollectionEditor
System.Web.UI.Design.ExpressionsCollectionEditor
System.Web.UI.Design.UrlEditor
System.Web.UI.Design.XmlFileEditor
System.Web.UI.Design.WebControls.DataGridColumnCollectionEditor
System.Web.UI.Design.WebControls.DataControlFieldTypeEditor
System.Web.UI.Design.WebControls.MenuBindingsEditor
System.Web.UI.Design.WebControls.MenuItemCollectionEditor
System.Web.UI.Design.WebControls.ParameterCollectionEditor
System.Web.UI.Design.WebControls.RegexTypeEditor
System.Web.UI.Design.WebControls.TreeNodeCollectionEditor
System.Web.UI.Design.WebControls.TreeViewBindingsEditor
System.Web.UI.Design.WebControls.DataPagerFieldTypeEditor
System.Messaging.Design.QueuePathEditor
System.Drawing.Design.ImageEditor
System.Drawing.Design.ColorEditor
System.Drawing.Design.ContentAlignmentEditor
System.Drawing.Design.CursorEditor
System.Drawing.Design.FontEditor
System.Drawing.Design.FontNameEditor
System.Drawing.Design.IconEditor
System.Workflow.ComponentModel.Design.TypeBrowserEditor
System.Workflow.ComponentModel.Design.BindUITypeEditor
相關問題
- 1. Win32編輯控件的默認高度
- 2. 在Pry中設置默認編輯器
- 3. wcftestclient.exe - 編輯默認配置
- 4. 將modelsim編輯器重置爲默認編輯器
- 5. Programmaticaly顯示PropertyGrid主動控件的編輯控件
- 6. 設置Android XML文件的默認編輯器
- 7. 如何使內部編輯器在eclipse中的默認編輯器
- 8. html編輯器的wordpress默認標記
- 9. 在集合編輯器中的PropertyGrid
- 10. 如何重置PropertyGrid中組件屬性的默認值?
- 11. Django - 編輯設置默認時區
- 12. 在UISegment控件內設置編輯
- 13. PropertyGrid中的編輯列表
- 14. 帶有可編輯默認值的Windows Perl行編輯器?
- 15. 崇高作爲默認編輯器
- 16. Perforce更改默認編輯器
- 17. 在Xcode中啓動默認編輯器
- 18. TinyMCE文本編輯器和默認HTML
- 19. 如何設置默認的可視化編輯器在Plone 4
- 20. 定製Sitecore富文本編輯器的默認配置
- 21. 如何設置Froala編輯器的默認文本?
- 22. 將Octave 4.0/4.2.1中的默認編輯器設置爲Vim
- 23. 如何設置旋轉編輯器的默認值aspx devexpress
- 24. jquery datatable默認編輯點擊事件
- 25. 默認編輯應用
- 26. Twiki默認編輯模式
- 27. 智能地從Python CLI程序內啓動默認編輯器?
- 28. SP2010內容編輯器:默認添加文本到段落
- 29. Sitecore富文本HTML編輯器配置文件 - 設置全局默認
- 30. 在默認編輯模式下創建一個ListView控件
但是它會自動執行的所有事情是什麼?現在我不想處理自定義編輯。我已經嘗試了各種數字,字符串,布爾和日期時間,他們都工作或編譯器內置。我希望有一個列表可以默認編輯的所有類型的列表。 – 2009-04-09 19:45:22