البند المختلفة قالب لكل عنصر في WPF القائمة ؟

StackOverflow https://stackoverflow.com/questions/152664

  •  02-07-2019
  •  | 
  •  

سؤال

لدي العديد من البنود داخل قائمة التحكم.أريد كل عنصر إلى عنصر آخر قالب اعتمادا على نوع العنصر.إذن العنصر الأول في القائمة هو ObjectA نوع و لذلك أريد أن تكون المقدمة مع ItemTemplateA.البند الثاني هو ObjectB نوع و لذلك أريد أن يكون ItemTemplateB التقديم.في هذه اللحظة أنا يمكن فقط استخدام ItemTemplate الإعداد لتحديد قالب واحد لكل منهم.أي طريقة لتحقيق هذا ؟

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

المحلول

على ItemTemplateSelector سوف تعمل ولكن أعتقد أنه من الأسهل لإنشاء متعددة DataTemplates في قسم الموارد و من ثم إعطاء كل واحد DataType.هذا سوف تلقائيا ثم استخدام هذه DataTemplate إذا كانت العناصر مولد بالكشف عن مطابقة البيانات نوع ؟

<DataTemplate DataType={x:Type local:ObjectA}>
   ...
</DataTemplate>

أيضا تأكد من أن لديك لا x:Key مجموعة DataTemplate.
قراءة المزيد عن هذا النهج هنا

نصائح أخرى

إلقاء نظرة على ItemTemplateSelector العقارات الخاصة بك قائمة التحكم.يمكنك الإشارة إلى العرف TemplateSelector والتي تقرر قالب للاستخدام في التعليمات البرمجية.

وهنا بلوق وظيفة واصفا TemplateSelectors:

http://blogs.interknowlogy.com/johnbowen/archive/2007/06/21/20463.aspx

تحرير:هنا هو أفضل وظيفة:

http://blog.paranoidferret.com/index.php/2008/07/16/wpf-tutorial-how-to-use-a-datatemplateselector/

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