MemberRelationshipService Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir üyeyi başka bir üyeyle ilişkili olarak temel sınıfı sağlar.
public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
- Devralma
-
MemberRelationshipService
Örnekler
, MemberRelationshipService bir özellik değerinin başka bir konumdan alınmasını basitleştirir. Tasarımcı, bir üyeye başka bir üyenin değerinin atandığını dikte etmek için bu hizmete erişebilir. Kod oluşturucu, kod oluştururken bu tür ilişkileri arar ve iki üye arasındaki bir ilişki bulunursa kod oluşturucu, özellik değerini aramak yerine ilişkinin kodunu yayar. Örnek olarak önceki metin atamasını kullanarak, aşağıdaki kod örneği ilişki kurmak için kullanılan tasarım zamanı kodunu gösterir.
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);
Açıklamalar
Tasarımcılar, nesnelerin canlı özellik değerlerini arayan ve bu değerleri kod olarak oluşturan bir altyapı aracılığıyla kod oluşturmak için kendilerini seri hale getirir. Bu nedenle, örneğin, bir düğmenin metni aşağıdaki biçimde oluşturulur.
this.okButton.Text = "OK";
Bu düzenin sınırlamalarından biri, bir özelliği başka bir konumdan alma işleminin zor olmasıdır. Örneğin, kod oluşturucunun güvenebileceği tek şey özelliğindeki değer olduğundan kodu aşağıdaki biçimde yaymak çok zordur.
this.titleLabel.Text = this.Text;
Uygulayanlara Notlar
MemberRelationshipService sınıfıdırabstract
. Somut bir sürümün uygulanması, desteklenen üye türlerine bağlı olarak değişir. Örneğin, bir olayın başka bir olayla ilişkili olması, bir özelliği başka bir özellikle ilişkili olmaktan farklı bir uygulama gerektirebilir. Hizmetin uygulanması için aşağıdaki adımlar gerekir:
Desteklediğiniz ilişkileri döndürmek
true
için uygulayınSupportsRelationship(MemberRelationship, MemberRelationship).Kaynak ilişkideki değişiklikleri izleyin ve değer değişikliklerini hedef ilişkiye atayın.
Oluşturucular
MemberRelationshipService() |
MemberRelationshipService sınıfının yeni bir örneğini başlatır. |
Özellikler
Item[MemberRelationship] |
Kaynak ve hedef nesne arasında ilişki kurar. |
Item[Object, MemberDescriptor] |
Kaynak ve hedef nesne arasında ilişki kurar. |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetRelationship(MemberRelationship) |
Verilen kaynak ilişkisiyle bir ilişki alır. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
SetRelationship(MemberRelationship, MemberRelationship) |
Kaynak nesne ile hedef ilişki arasında bir ilişki oluşturur. |
SupportsRelationship(MemberRelationship, MemberRelationship) |
Verilen ilişkinin desteklenip desteklenmediğini belirten bir değer alır. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |