Compartilhar via


Classe CategoryEditor

Uma classe abstrata para criar editores de categoria personalizada.

Namespace:  Microsoft.Windows.Design.PropertyEditing
Assembly:  Microsoft.Windows.Design (em Microsoft.Windows.Design.dll)

Sintaxe

Public MustInherit Class CategoryEditor

Dim instance As CategoryEditor
public abstract class CategoryEditor
public ref class CategoryEditor abstract
public abstract class CategoryEditor

Comentários

Derivar dessa classe para fornecer um personalizadoCategoryEditor para um conjunto de propriedades em um host de navegador de propriedade. Esta classe representa uma interface de usuário personalizada para editar um conjunto de propriedades, sistema autônomo sistema autônomo propriedades na categoria texto relacionado.

The TargetCategory propriedade indica a categoria de propriedades relacionadas destinado para edição este editor. Por exemplo, várias propriedades relacionadas a texto são exibidas na janela Propriedades, sob a categoria de texto.Se for criado um editor para edição essas propriedades, a TargetCategorypropriedade retornará "Texto".

The EditorTemplate propriedade retorna o modelo XAML para a interface visual para este editor. Isso normalmente é fornecido em um ResourceDictionary em qualquer ponto do projeto.

Observe que, antes de um CategoryEditor será usada pelo designer, ele deve ser registrado. Para obter mais informações, consulte IRegisterMetadata.

Exemplos

O exemplo de código a seguir mostra como usar o CategoryEditor classe. Para obter mais informações, consulte Demonstra Passo a passo: Criando um editor de categoria.

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"; }
    }
}

Hierarquia de herança

System.Object
  Microsoft.Windows.Design.PropertyEditing.CategoryEditor

Acesso thread-safe

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Membros CategoryEditor

Namespace Microsoft.Windows.Design.PropertyEditing

Outros recursos

Propriedade de edição de arquitetura

Extensibilidade do WPF Designer