Export (0) Print
Expand All

AttributeTableBuilder.CreateTable Method

Creates an attribute table that contains all the attribute definitions provided through AddCustomAttributes calls.

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

public AttributeTable CreateTable()

Return Value

Type: Microsoft.Windows.Design.Metadata.AttributeTable
An attribute table that can be passed to the metadata store.

The table is a snapshot of the current state of the attribute builder. Any subsequent AddCustomAttributes calls are not included in the table. If callback methods were used to declare attributes, those methods will not be evaluated during CreateTable. Instead, the table will contain those callbacks and will evaluate them as needed.

The following code example shows how to build an AttributeTable and add it to the metadata store. The Metadata class attaches an adorner provider to a control. For more information, see Walkthrough: Creating a Design-time Adorner.

// 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());
    }
}

Community Additions

ADD
Show:
© 2014 Microsoft