ExtendedPropertyValueEditor 类

更新:2007 年 11 月

属性的任何和所有扩展编辑器逻辑的容器。

命名空间:  Microsoft.Windows.Design.PropertyEditing
程序集:  Microsoft.Windows.Design(在 Microsoft.Windows.Design.dll 中)

语法

声明
Public Class ExtendedPropertyValueEditor _
    Inherits PropertyValueEditor
用法
Dim instance As ExtendedPropertyValueEditor
public class ExtendedPropertyValueEditor : PropertyValueEditor
public ref class ExtendedPropertyValueEditor : public PropertyValueEditor
public class ExtendedPropertyValueEditor extends PropertyValueEditor

备注

ExtendedPropertyValueEditor 类可以包含两个 DataTemplate 对象,一个用于内联编辑器,另一个用于扩展的编辑器。内联编辑器提供了在“属性”窗口边界内显示的自定义界面,而扩展编辑器则提供在新窗口中显示的界面。

InlineEditorTemplate 属性返回内联编辑器的可视化界面的 XAML 模板,而 ExtendedEditorTemplate 属性则返回扩展编辑器的 XAML 模板。这些通常在项目中其他地方的 ResourceDictionary 中提供。

应该使用 EditModeSwitchButton 调用自定义的 ExtendedPropertyValueEditor。有关演示,请参见演练:实现颜色编辑器

示例

下面的代码示例演示如何使用 ExtendedPropertyValueEditor 类。有关更多信息,请参见演练:实现颜色编辑器

' Demonstrates creating a class that inherits ExtendedPropertyValueEditor
' and setting the ExtendedEditorTemplate and InlineEditorTemplate properties.
Public Class BrushExtendedEditor
    Inherits ExtendedPropertyValueEditor
    ' The EditorResources class in this example inherits ResourceDirectory and
    ' contains the template for the extended editor and the inline editor. This would be defined in 
    ' an associated XAML file named EditorResources.xaml
    Private res As New EditorResources()
    Public Sub New()
        Me.ExtendedEditorTemplate = CType(res("BrushExtendedEditorTemplate"), DataTemplate)
        Me.InlineEditorTemplate = CType(res("BrushInlineEditorTemplate"), DataTemplate)
    End Sub
End Class
// Demonstrates creating a class that inherits ExtendedPropertyValueEditor
// and setting the ExtendedEditorTemplate and InlineEditorTemplate properties.
public class BrushExtendedEditor : ExtendedPropertyValueEditor
{
    // The EditorResources class in this example inherits ResourceDictionary 
    // class contains template for the inline editor and the extended editor. These would be 
    // defined in an associated XAML file named EditorResources.xaml
    private EditorResources res = new EditorResources();

    public BrushExtendedEditor()
    {
        this.ExtendedEditorTemplate = res["BrushExtendedEditorTemplate"] as DataTemplate;
        this.InlineEditorTemplate = res["BrushInlineEditorTemplate"] as DataTemplate;
    }
}

继承层次结构

System.Object
  Microsoft.Windows.Design.PropertyEditing.PropertyValueEditor
    Microsoft.Windows.Design.PropertyEditing.ExtendedPropertyValueEditor

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

另请参见

参考

ExtendedPropertyValueEditor 成员

Microsoft.Windows.Design.PropertyEditing 命名空间

其他资源

属性编辑体系结构

WPF 设计器扩展性

元数据存储区