我正在使用WPF构建一个应用程序,它将成为各种设计者,这意味着,用户可以将自定义UI元素拖放到画布中,并能够通过属性配置其行为。
(将此视为特定于域的PowerPoint。您可以向演示文稿添加元素,配置元素的属性,然后最终可以运行“幻灯片放映”,这些元素将根据其属性进行操作)
所以在我的应用程序中,显示和配置元素属性的最佳方法是什么?我可以使用属性对话框控件吗? (类似于Visual Studio中的控件)
答案 0 :(得分:13)
可悲的是,WPF中没有PropertyGrid
控件。要么您必须使用WinForms属性网格,要么使用开源社区中的网格或从第三方供应商处购买。您有以下选项可供选择 -
开源 -
WPF属性网格: http://wpg.codeplex.com/
WPF的PropertyTools(以前称为PropertyEditor): http://propertytools.codeplex.com/
扩展WPF工具包PropertyGrid: https://github.com/xceedsoftware/wpftoolkit/wiki/PropertyGrid
原生WPF 4 PropertyGrid http://www.codeproject.com/Articles/87715/Native-WPF-4-PropertyGrid
WPF PropertyGrid - MVVM技术: http://www.codeproject.com/KB/WPF/PropertyGridMVVM.aspx
如果您正在使用.Net 4.0,则可以使用WWF的PropertyInspectorView
控件作为WPF中的属性网格。正如本文所述 - http://www.codeproject.com/KB/grid/WpfPropertyGrid.aspx
第三方:
Actipro: http://www.actiprosoftware.com/products/controls/wpf/propertygrid
ComponentOne的: http://www.componentone.com/SuperProducts/PropertyGridWPF/
思维空间: http://www.mindscape.co.nz/products/WPFPropertygrid/
Syncfusion: http://www.syncfusion.com/products/wpf/property-grid
自定义 -
如果您想构建自己的PropertyGrid
,请查看这些文章 -
(非常)简单的WPF PropertyGrid在20 分钟:http://blog.joachim.at/?p=36
你自己的PropertyGrid在几个小时内: http://dvuyka.spaces.live.com/blog/cns!305B02907E9BE19A!448.entry
答案 1 :(得分:0)
您需要为此使用propertygrid。请参阅这些帖子,了解如何创建一个。
Limitations of using .NET 2.0 (Windows Forms) controls in WPF?