AttributeTableBuilder.AddCallback (Método)
Agrega una devolución de llamada que se invoca cuando se necesitan los metadatos para el tipo especificado.
Espacio de nombres: Microsoft.Windows.Design.Metadata
Ensamblado: Microsoft.Windows.Design.Extensibility (en Microsoft.Windows.Design.Extensibility.dll)
Sintaxis
'Declaración
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
)
Parámetros
- type
Tipo: System.Type
Tipo al que agregar los atributos de metadatos.
- callback
Tipo: Microsoft.Windows.Design.Metadata.AttributeCallback
Un AttributeCallback que agrega los metadatos a Type.
Comentarios
Callback puede agregar los metadatos a la tabla de atributos a petición, proceso que resulta más eficaz que agregar los metadatos cuando se crea la tabla.
Use el método AddCallback con la clase AttributeCallbackBuilder cuando esté generando una tabla de atributos grande.
Ejemplos
En el siguiente ejemplo de código se muestra cómo usar el método AddCallback y la clase AttributeTableBuilder para crear y rellenar una tabla de atributos. Este ejemplo de código forma parte de un ejemplo más extenso referente a la clase 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();
}
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.