Sdílet prostřednictvím


AttributeTableBuilder – třída

Vytvoří tabulku atribut definující metadata návrhu.

Hierarchie dědičnosti

System.Object
  Microsoft.Windows.Design.Metadata.AttributeTableBuilder

Obor názvů:  Microsoft.Windows.Design.Metadata
Sestavení:  Microsoft.Windows.Design.Extensibility (v Microsoft.Windows.Design.Extensibility.dll)

Syntaxe

'Deklarace
Public Class AttributeTableBuilder
public class AttributeTableBuilder
public ref class AttributeTableBuilder
type AttributeTableBuilder =  class end
public class AttributeTableBuilder

Typ AttributeTableBuilder zveřejňuje následující členy.

Konstruktory

  Název Popis
Veřejná metoda AttributeTableBuilder Inicializuje novou instanci AttributeTableBuilder Třída

Na začátek

Metody

  Název Popis
Veřejná metoda AddCallback Přidá zpětné vyvolání potřebných pro zadaný typ metadat.
Veřejná metoda AddCustomAttributes(Assembly, array<Attribute[]) Přidá obsah pole zadané atributy tabulky Tvůrce.
Veřejná metoda AddCustomAttributes(Type, array<Attribute[]) Přidá obsah poskytnutý atributy tabulky Tvůrce.
Veřejná metoda AddCustomAttributes(Type, String, array<Attribute[]) Přidá atributy členů se zadaným názvem.
Veřejná metoda AddTable Tvůrce tabulky přidá obsah poskytnutý atributu tabulky.
Veřejná metoda CreateTable Vytvoří atribut tabulky aplikace obsahující všechny definice atributu poskytované prostřednictvím AddCustomAttributes volání.
Veřejná metoda Equals Určuje, zda zadaná Object se rovná aktuální Object. (Zděděno z Object.)
Chráněná metoda Finalize Umožňuje zkuste uvolnit prostředky a provádět další operace vyčištění před je převzaty systémem pro uvolnění objektu. (Zděděno z Object.)
Veřejná metoda GetHashCode Slouží jako funkce hash určitého typu. (Zděděno z Object.)
Veřejná metoda GetType Získává Type aktuální instance. (Zděděno z Object.)
Chráněná metoda MemberwiseClone Vytvoří kopii aktuální Object. (Zděděno z Object.)
Veřejná metoda ToString Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.)
Veřejná metoda ValidateTable Tato metoda slouží k ověření informací platný atribut obsahuje atribut tabulky, který sestavujete.

Na začátek

Poznámky

Chcete-li vytvořit tabulku atributů, začněte vytvořením instance AttributeTableBuilder Třída Přidání metadat do atributu tabulky Tvůrce voláním AddCustomAttributes přetížení. Po přidání metadat vyrábět tabulku atributů z atributu tabulky Tvůrce voláním CreateTable metody. Atribut tabulky Tvůrce metody podporují Delegáti zpětné volání tak vytvoření atributu tabulky může být odloženo, dokud nebude potřeba.

Použití AttributeCallbackBuilder třídy namísto AttributeTableBuilder třídy přidáváte mnoho atributů. Tento přístup odkládat údaje vytváření atributů do Návrháře požadavky metadata pro typ cíle.

Příklady

Následující příklad kódu ukazuje, jak použít AttributeTableBuilder třídy Vytvoření a naplnění atributu tabulky. Další informace naleznete v tématu Walkthrough: Creating a Design-time Adorner.

Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Reflection
Imports System.Text
Imports System.Windows.Media
Imports System.Windows.Controls
Imports System.Windows

Imports Microsoft.Windows.Design.Features
Imports Microsoft.Windows.Design.Metadata

' The ProvideMetadata assembly-level attribute indicates to designers
' that this assembly contains a class that provides an attribute table. 
<Assembly: ProvideMetadata(GetType(CustomControlLibrary.VisualStudio.Design.Metadata))> 

' 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 IProvideAttributeTable

    ' Accessed by the designer to register any design-time metadata.
    Public ReadOnly Property AttributeTable() As AttributeTable _
        Implements IProvideAttributeTable.AttributeTable
        Get
            Dim builder As New AttributeTableBuilder()

            builder.AddCustomAttributes( _
                GetType(Button), _
                New DefaultPropertyAttribute("Content"))

            ' Apply the ReadOnlyAttribute to the Background property 
            ' of the Button class.
            builder.AddCustomAttributes( _
                GetType(Button), _
                "Background", _
                New ReadOnlyAttribute(True))

            Dim attributes As AttributeTable = builder.CreateTable()

            Return attributes
        End Get
    End Property

End Class
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Reflection;
using System.Text;
using System.Windows.Media;
using System.Windows.Controls;
using System.Windows;

using Microsoft.Windows.Design.Features;
using Microsoft.Windows.Design.Metadata;

// The ProvideMetadata assembly-level attribute indicates to designers
// that this assembly contains a class that provides an attribute table. 
[assembly: ProvideMetadata(typeof(CustomControlLibrary.VisualStudio.Design.Metadata))]
namespace CustomControlLibrary.VisualStudio.Design
{
    // Container for any general design-time metadata to initialize.
    // Designers look for a type in the design-time assembly that 
    // implements IProvideAttributeTable. If found, designers instantiate 
    // this class and access its AttributeTable property automatically.
    internal class Metadata : IProvideAttributeTable
    {
        // Accessed by the designer to register any design-time metadata.
        public AttributeTable AttributeTable
        {
            get 
            {
                AttributeTableBuilder builder = new AttributeTableBuilder();

                builder.AddCustomAttributes(
                    typeof(Button),
                    new DefaultPropertyAttribute("Content"));

                // Apply the ReadOnlyAttribute to the Background property 
                // of the Button class.
                builder.AddCustomAttributes(
                    typeof(Button),
                    "Background",
                    new ReadOnlyAttribute(true));

                AttributeTable attributes = builder.CreateTable();

                return attributes;
            }
        }
    }
}

Zabezpečení podprocesu

Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou zabezpečeny pro používání podprocesů. Zabezpečení sdílených členů pro používání podprocesů není zaručeno.

Viz také

Odkaz

Microsoft.Windows.Design.Metadata – obor názvů

AttributeTable

AttributeCallbackBuilder