मेरे पास एक पदानुक्रम के लिए एक WPF TreeView बाध्य हैमिश्रित प्रकार की वस्तुओं। इसलिए, मैं "डेटाटाइप" संपत्ति के साथ HierarchicalDataTemplates का उपयोग करता हूं प्रत्येक प्रकार के लिए प्रयुक्त टेम्पलेट निर्दिष्ट करें, जो ठीक काम करता है (TreeView प्रत्येक ऑब्जेक्ट प्रकार के लिए स्वचालित रूप से सही पकड़ता है)।
अब मुझे समस्या है कि मेरे पास दूसरा हैTreeView (उसी XAML फ़ाइल में) जो एक ही प्रकार की वस्तुओं के साथ आबादी है। इस बार, हालांकि, उन्हें किसी अन्य तरीके से प्रदर्शित किया जाना है, इसलिए मुझे एक और सेट चाहिए HierarchicalDateTemplates। फिर, मैं "डेटा टाइप" संपत्ति का उपयोग करूंगा। लेकिन अगर मैं उन्हें एक ही एक्सएएमएल फ़ाइल में डालता हूं, तो निश्चित रूप से मुझे एक त्रुटि मिलती है (कि मैं "टी" कर सकता हूं एक ही प्रकार के लिए दो टेम्पलेट परिभाषित करें)।
क्या उन्हें किसी भी तरह से गुंजाइश करने का कोई तरीका है, इसलिए पहला सेट विशेष रूप से उपयोग किया जाता है पहला TreeView, और दूसरा दूसरा TreeView द्वारा केवल?
(ध्यान दें कि ऑब्जेक्ट पेड़ संरचना अग्रिम में ज्ञात नहीं है, मेरे पास है "डेटाटाइप" दृष्टिकोण का उपयोग करने के लिए (जिसे मैं वैसे भी पसंद करता हूं) और इसका उपयोग नहीं कर सकता एक स्थिर पदानुक्रमित डेटा टेम्पलेट।)
उत्तर:
उत्तर № 1 के लिए 1अपने पहले TreeView के संसाधनों में पहला डेटा टेम्पलेट सेट रखें, और दूसरा दूसरा TreeView के संसाधनों में सेट करें और यह काम करना चाहिए।
<TreeView>
<TreeView.Resources>
<!-- put your data templates here -->
</TreeView.Resources>
</TreeView>
देख FrameworkElement.Resources अधिक जानकारी के लिए।