नहीं, जैसा कि आपने कहा है कि BasedOn
संपत्ति का उपयोग कर शैली को 'उत्तराधिकारी' बनाना संभव है, लेकिन सीधे टेम्पलेट को 'विरासत' प्राप्त करना संभव नहीं है। हालांकि यह समझ में आता है, टेम्पलेट विरासत का अर्थशास्त्र क्या होगा? व्युत्पन्न टेम्पलेट बेस टेम्पलेट में तत्वों को किसी भी तरह जोड़ने या बदलने में सक्षम कैसे होगा?
शैलियों के साथ यह पूरी तरह से संभव है, क्योंकि आप आसानी से Setters
, Triggers
आदि जोड़ सकते हैं। एकमात्र चीज जो टेम्पलेट विरासत के साथ संभवतः संभव हो सकती है, आधार टेम्पलेट में Triggers
जोड़ रही है। हालांकि, उस स्थिति में आपको मूल टेम्पलेट में तत्व नामों का अंतरंग ज्ञान होना चाहिए, और मूल टेम्पलेट में तत्व नाम परिवर्तन आपके व्युत्पन्न को तोड़ सकता है। पठनीयता के साथ किसी मुद्दे का उल्लेख नहीं करना है, जहां आप अपने व्युत्पन्न टेम्पलेट में एक नाम का उल्लेख करते हैं, जिसे कहीं और पूरी तरह परिभाषित किया गया है।
बेल्टेड एडिशन यह सब कहकर, आपकी विशेष समस्या को हल करना संभव है (हालांकि अब मुझे संदेह है कि यह अभी भी आपका है, या यहां तक कि एक समस्या भी है)। आप Template
संपत्ति के लिए एक सेटटर के साथ अपने नियंत्रण के लिए शैली को परिभाषित करते हैं:
<Style TargetType="<your type>">
<Setter Property="Template" Value="{StaticResource <existing template resource name>}"/>
</Style>
स्रोत
2010-01-09 19:10:17