Sdílet prostřednictvím


MetadataStore-Klasse

Aktualisiert: November 2007

Ein Container mit benutzerdefinierten Entwurfszeitattributen.

Namespace:  Microsoft.Windows.Design.Metadata
Assembly:  Microsoft.Windows.Design (in Microsoft.Windows.Design.dll)

Syntax

'Declaration
Public NotInheritable Class MetadataStore
'Usage
Sie müssen keine Instanz einer statischen Klasse deklarieren, um auf ihre Member zuzugreifen.
public static class MetadataStore
public ref class MetadataStore abstract sealed
public final class MetadataStore

Hinweise

Mit der MetadataStore-Klasse können Sie benutzerdefinierte Entwurfszeitattribute an Typen anfügen. Geben Sie die benutzerdefinierten Attribute in einer AttributeTable an, die Sie mit einem AttributeTableBuilder erstellen.

Fügen Sie dem Metadatenspeicher die Attributtabelle hinzu, indem Sie die AddAttributeTable-Methode verwenden. Sobald die Attribute hinzugefügt wurden, werden sie angezeigt, wenn die TypeDescriptor-Methoden aufgerufen werden.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie eine AttributeTable erstellt wird, um einem Adorneranbieter eine Steuerelementklasse zuzuweisen. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen eines Entwurfszeitadorners.

' Container for any general design-time metadata to initialize.
' Designers look for a type in the design-time assembly that 
' implements IRegisterMetadata. If found, designers instantiate 
' this class and call its Register() method automatically.
Friend Class Metadata
    Implements IRegisterMetadata

    ' Called by the designer to register any design-time metadata.
    Public Sub Register() Implements IRegisterMetadata.Register
        Dim builder As New AttributeTableBuilder()

        ' Add the adorner provider to the design-time metadata.
        builder.AddCustomAttributes(GetType(ButtonWithDesignTime), _
                                    New FeatureAttribute(GetType(OpacitySliderAdornerProvider)))

        MetadataStore.AddAttributeTable(builder.CreateTable())
    End Sub

End Class
// Container for any general design-time metadata to initialize.
// Designers look for a type in the design-time assembly that 
// implements IRegisterMetadata. If found, designers instantiate 
// this class and call its Register() method automatically.
internal class Metadata : IRegisterMetadata
{
    // Called by the designer to register any design-time metadata.
    public void Register()
    {
        AttributeTableBuilder builder = new AttributeTableBuilder();

        // Add the adorner provider to the design-time metadata.
        builder.AddCustomAttributes(
            typeof(ButtonWithDesignTime), 
            new FeatureAttribute(typeof(OpacitySliderAdornerProvider)));

        MetadataStore.AddAttributeTable(builder.CreateTable());
    }
}

Vererbungshierarchie

System.Object
  Microsoft.Windows.Design.Metadata.MetadataStore

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Referenz

MetadataStore-Member

Microsoft.Windows.Design.Metadata-Namespace

AttributeTable

AttributeTableBuilder

Weitere Ressourcen

Metadatenspeicher