MemberRelationshipService Clase

Definición

Proporciona la clase base para relacionar un miembro con otro.

public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
Herencia
MemberRelationshipService

Ejemplos

MemberRelationshipService simplifica la recuperación de un valor de propiedad desde otra ubicación. Un diseñador puede acceder a este servicio para dictar que a un miembro se le asigna el valor de otro. El generador de código busca estas relaciones al generar código y, si se encuentra una relación entre dos miembros, emite código para la relación en lugar de buscar el valor de propiedad. Con la asignación de texto anterior como ejemplo, en el ejemplo de código siguiente se muestra el código de tiempo de diseño usado para establecer una relación.

object titleLabel, form;
PropertyDescriptor titleLabelText = TypeDescriptor.GetProperties(titleLabel)["Text"];
PropertyDescriptor formText = TypeDescriptor.GetProperties(form)["Text"];
MemberRelationshipService ms = GetService(typeof(MemberRelationshipService);
ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText);

Comentarios

Los diseñadores se serializan para codificar a través de un motor que busca en los valores de propiedad dinámica de los objetos y genera esos valores como código. Por lo tanto, por ejemplo, el texto de un botón se genera en el formato siguiente.

this.okButton.Text = "OK";

Una de las limitaciones de este esquema es que es difícil recuperar una propiedad de otra ubicación. Por ejemplo, es muy difícil emitir código en el siguiente formato, ya que lo único que puede confiar el generador de código es el valor de la propiedad .

this.titleLabel.Text = this.Text;

Notas a los implementadores

La MemberRelationshipService clase es abstract. La implementación de una versión concreta varía en función de los tipos de miembros admitidos. Por ejemplo, relacionar un evento con otro podría requerir una implementación diferente de la relativa de una propiedad a otra. La implementación del servicio requiere los pasos siguientes:

Constructores

Nombre Description
MemberRelationshipService()

Inicializa una nueva instancia de la clase MemberRelationshipService.

Propiedades

Nombre Description
Item[MemberRelationship]

Establece una relación entre un objeto de origen y de destino.

Item[Object, MemberDescriptor]

Establece una relación entre un objeto de origen y de destino.

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetRelationship(MemberRelationship)

Obtiene una relación con la relación de origen especificada.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
SetRelationship(MemberRelationship, MemberRelationship)

Crea una relación entre el objeto de origen y la relación de destino.

SupportsRelationship(MemberRelationship, MemberRelationship)

Obtiene un valor que indica si se admite la relación especificada.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también