Comparteix a través de


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 en 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 a sí mismos 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 de una propiedad a otra. La implementación del servicio requiere los pasos siguientes:

Constructores

MemberRelationshipService()

Inicializa una nueva instancia de la clase MemberRelationshipService.

Propiedades

Item[MemberRelationship]

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

Item[Object, MemberDescriptor]

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

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetRelationship(MemberRelationship)

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

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(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 la relación determinada es compatible.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también