CategoryEditor - класс
Обновлен: Ноябрь 2007
Абстрактный класс для создания пользовательских редакторов категорий.
Пространство имен: Microsoft.Windows.Design.PropertyEditing
Сборка: Microsoft.Windows.Design (в Microsoft.Windows.Design.dll)
Синтаксис
'Декларация
Public MustInherit Class CategoryEditor
'Применение
Dim instance As CategoryEditor
public abstract class CategoryEditor
public ref class CategoryEditor abstract
public abstract class CategoryEditor
Заметки
Чтобы создать пользовательский объект CategoryEditor для набора свойств хост-приложения обозревателя свойств, выполните наследование от этого класса. Этот класс представляет настраиваемый пользовательский интерфейс для редактирования связанного набора свойств, например свойств категории Text.
Свойство TargetCategory определяет категорию связанных свойств, для которой создается редактор. Например, в окне «Свойства» в категории Text отображается ряд текстовых свойств. Если редактор предназначен для изменения этих свойств, в свойстве TargetCategory возвращается «Text».
В свойстве EditorTemplate возвращается шаблон XAML для графического интерфейса пользователя этого редактора. Обычно это предоставляется в объекте ResourceDictionary в другом месте проекта.
Обратите внимание, что перед использованием в конструкторе объекта CategoryEditor следует зарегистрировать его. Дополнительные сведения см. в разделе IRegisterMetadata.
Примеры
В следующем примере кода показано применение класса CategoryEditor. Дополнительные сведения см. в разделе Пошаговое руководство. Создание редактора категорий.
Public Class TextCategoryEditor
Inherits CategoryEditor
' The EditorResources class in this example inherits ResourceDirectory and
' contains the template for the category editor. This would be defined in
' an associated XAML file named EditorResources.xaml
Private res As New EditorResources()
Public Overrides Function ConsumesProperty(ByVal prop As PropertyEntry) As Boolean
Return True
End Function
Public Overrides ReadOnly Property EditorTemplate() As System.Windows.DataTemplate
Get
Return CType(res("TextCategoryEditorTemplate"), DataTemplate)
End Get
End Property
Public Overrides Function GetImage(ByVal desiredSize As System.Windows.Size) As Object
Return Nothing
End Function
Public Overrides ReadOnly Property TargetCategory() As String
Get
Return "Text"
End Get
End Property
End Class
public class TextCategoryEditor : CategoryEditor
{
// The EditorResources class in this example inherits ResourceDictionary
// and contains template for the category editor. This would be
// defined in an associated XAML file named EditorResources.xaml
private EditorResources res = new EditorResources();
public TextCategoryEditor()
{
}
public override bool ConsumesProperty(PropertyEntry property)
{
return true;
}
public override DataTemplate EditorTemplate
{
get
{
return res["TextCategoryEditorTemplate"] as DataTemplate;
}
}
public override object GetImage(Size desiredSize)
{
return null;
}
public override string TargetCategory
{
get { return "Text"; }
}
}
Иерархия наследования
System.Object
Microsoft.Windows.Design.PropertyEditing.CategoryEditor
Потокобезопасность
Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.
См. также
Ссылки
Microsoft.Windows.Design.PropertyEditing - пространство имен