如何:创建值编辑器

更新:2007 年 11 月

使用 Visual Studio Windows Presentation Foundation (WPF) 设计器的扩展性模型,可以在设计时在“属性”窗口中为属性值提供值编辑器。值编辑器包含两种类型:内联值编辑器和扩展值编辑器。内联值编辑器在“属性”窗口自身中显示,而扩展值编辑器则打开一个新窗口进行编辑。创建两种值编辑器的常规过程是相同的。

创建值编辑器

  1. 创建一个 DataTemplate 类,该类绑定到要进行编辑的属性。有关如何创建数据模板的更多信息,请参见数据模板化概述

  2. 创建一个新类来封装值编辑器。对于内联值编辑器,该类应继承自 PropertyValueEditor。扩展值属性编辑器应继承自 ExtendedPropertyValueEditor

  3. 在值编辑器类的构造函数中,设置值编辑器的模板。对于内联值编辑器,将 InlineEditorTemplate 属性设置为对此属性的模板的引用。对于扩展值编辑器,则设置 ExtendedEditorTemplate 属性。对于扩展值编辑器,您还可以通过设置 InlineEditorTemplate 属性来提供关联的内联值编辑器的模板。

  4. 如果尚未执行此操作,请创建一个实现 IRegisterMetadata 接口的类,并将其放置到自定义控件的 .Design 命名空间中。有关如何实现 IRegisterMetadata 的更多信息,请参见如何:使用元数据存储区

  5. 在步骤 4 中创建的元数据类中,注册值编辑器类,以便创建属性值与新值编辑器之间的关联。有关更多信息,请参见如何:使用元数据存储区

请参见

任务

演练:创建类别编辑器

概念

元数据存储区

参考

PropertyValueEditor

其他资源

WPF 设计器扩展性