共用方式為


AttributeTableBuilder.AddCallback 方法

會加入需要指定之型別的中繼資料時,所叫用的回呼。

命名空間:  Microsoft.Windows.Design.Metadata
組件:  Microsoft.Windows.Design.Extensibility (在 Microsoft.Windows.Design.Extensibility.dll 中)

語法

'宣告
Public Sub AddCallback ( _
    type As Type, _
    callback As AttributeCallback _
)
public void AddCallback(
    Type type,
    AttributeCallback callback
)
public:
void AddCallback(
    Type^ type, 
    AttributeCallback^ callback
)
member AddCallback : 
        type:Type * 
        callback:AttributeCallback -> unit 
public function AddCallback(
    type : Type, 
    callback : AttributeCallback
)

參數

  • type
    型別:System.Type
    中繼資料屬性要加入的目標型別。

備註

Callback 可以視需要將中繼資料加入至屬性表格,如此比建立表格時加入中繼資料還更有效率。

當您要產生大型屬性表格時,請搭配 AttributeCallbackBuilder 類別來使用 AddCallback 方法。

範例

在下列程式碼範例中,會說明如何使用 AddCallback 方法和 AttributeTableBuilder 類別,建立屬性表格並填入內容。 這個程式碼範例是 AttributeCallbackBuilder 類別完整範例的一部分。

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

            // Build the attribute table by using the AttributeCallbackBuilder 
            // class. The attribute table is not populated until the designer
            // needs it, which is more efficient for large attribute tables.
            builder.AddCallback(
                typeof(Button),
                delegate(AttributeCallbackBuilder callbackBuilder)
                {
                    callbackBuilder.AddCustomAttributes(
                        new DefaultPropertyAttribute("Content"));

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

            return builder.CreateTable();
        }
    }
}

.NET Framework 安全性

請參閱

參考

AttributeTableBuilder 類別

Microsoft.Windows.Design.Metadata 命名空間

AttributeTable

AttributeCallbackBuilder