سؤال

أنا أستخدم خصائص لإظهار خصائص مخصصة تتعرض من خلال تنفيذ ISUSTOMTYPTESCRIPTORTOR.

كائناتي هي الإعداد في بنية شجرة وقيم لكل خاصية يتم تعيينها إما في كل كائن أو موروثة من الكائنات الأصلية. في مجال إرسالها، أريد أن أظهر بصريا للمستخدم ما يتم تعيين قيم الخصائص في الكائن المحدد، والتي تورثها الكائنات الأصلية.

الآن أنا أظهر كل ممتلكات فئتين. تظهر مجموعة واحدة ما يتم تعيين القيمة في الكائن الفعلي، مع حقل فارغ إذا لم يتم تعيينه. تعرض المجموعة الأخرى قيم الخاصية المعينة إلى الكائن الذي يتم تعيينه إما في الكائن، أو المورو الموروث إذا لم يتم تعيينه في الكائن.

أرغب في الجمع بين هاتين المجموعتين في شراء واحدة عرض خصائص مجموعة منتظمة، والقيم الموروثة في النص المائل. ومع ذلك، لا يبدو أن هناك بأي حال من الأحوال للقيام بذلك من خلال Isustomtypedescriptor.getproperties (). وليس لدي سهولة الوصول إلى خصائص خصائص الشركات منذ أن تم إنشاؤها أثناء تشغيل البرنامج.

هل كانت مفيدة؟

المحلول

لا يمكنك أن تفعل مائلة - ولكن يمكنك أن تفعل جريئة؛ يتم تحديد السلوك الجريء من قبل PropertyDescriptorShouldSerializeValue; ؛ يمكنك التفاف PropertyDescriptorS عبر مختلف System.ComponentModel الخدع (ICustomTypeDescriptor, TypeConverter أو TypeDescriptionProvider) وتقديم الخاصة بك PropertyDescriptor.

بدلا من ذلك، هناك شبكات مماثلة مع المزيد من الخيارات، مثل بواسطة VisualHint. - انظر "تخصيص الممتلكات" في تلك الصفحة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top