2009-09-01 13 views
8

जो मैं चाहता हूं वह एक नियंत्रण है जो टैब नियंत्रण की तरह काम करता है लेकिन शीर्ष पर टैब रखने के बजाय, आइटम को एक सूची बॉक्स में प्रदर्शित किया जाएगा। मुझे कल्पना है कि यह संभव है लेकिन मुझे कोई उदाहरण नहीं मिला है, मुझे उम्मीद है कि यहां कोई ऐसा व्यक्ति है जिसने ऐसा कुछ किया है।क्या एक WPF टैब नियंत्रण टेम्पलेट बनाना संभव है जो टैब नियंत्रण की तरह कुछ भी नहीं दिखता है?

उत्तर

11

आपको TabControl का उपयोग करने की आवश्यकता नहीं है। तुम बस मदों की एक सूची के लिए अपने ListBox बाँध सकता है, और इसके बगल में एक ContentControl, चयनित आइटम के लिए बाध्य कर दिया:

<DockPanel> 
    <ListBox Name="listBox" 
      DockPanel.Dock="Left" 
      ItemsSource="{Binding Items}" 
      DisplayMemberPath="Name"/> 
    <ContentControl Content="{Binding SelectedItem, ElementName=listBox}" 
        ContentTemplate="{StaticResource theTemplate}"/> 
</DockPanel> 
+0

वह-वह :)। मैंने "आपका उत्तर पोस्ट करें" बटन दबाए जाने से तेज़ी से लिखा है। बस सूची बॉक्स के साथ मास्टर-विवरण परिदृश्य के बारे में लिखना चाहता था, लेकिन आपने इसे तेज़ी से बनाया :)। चीयर्स। – Anvaka

12

डब्ल्यूपीएफ नियंत्रण बिल्कुल वही सक्षम करने के लिए डिज़ाइन किए गए हैं जो आप चाहते हैं। दृश्य प्रतिनिधित्व को पूरी तरह से बदलते समय नियंत्रण कार्यक्षमता का पुन: उपयोग करने के लिए। TabControl के लिए आपको अपना खुद का ControlTemplate बनाना होगा। आप TabControl ControlTemplate Example on MSDN पा सकते हैं। आपको Control Authoring Overview on MSDN का भी अध्ययन करना होगा।

मुझे वास्तव में सिल्वरलाइट 3 दस्तावेज को पचाने के लिए कुछ आसान लगता है, और भले ही मौलिक अवधारणाओं को स्टाइल करने पर नियंत्रण में आने पर कुछ मतभेद हैं। आप नियंत्रण टेम्पलेट्स के बारे में जानने के लिए Customizing the Appearance of an Existing Control by Using a ControlTemplate on MSDN पढ़ सकते हैं और फिर सिल्वरलाइट में अपना नियंत्रण टेम्पलेट बनाने के लिए क्या आवश्यक है, यह जानने के लिए TabControl Styles and Templates का अध्ययन करें।

आप WPF में डिफ़ॉल्ट TabControl टेम्पलेट को निकालने के लिए अभिव्यक्ति मिश्रण का उपयोग कर सकते हैं।

+3

महान writeup कि सत्ता और WPF के इरादे का सार अच्छी तरह से नियंत्रित करता है। मुझे अभी तक वोट देने की क्षमता के योग्य समझा जाना बाकी है, अन्यथा यह एक और उपयोगी उत्तर है जिसे मैंने क्रेडिट दिया होगा। हो सकता है कि मुझे इस बात पर वापस आना याद रहेगा क्योंकि यह मेरे अपने प्रश्न पर है यदि मैं कभी उस बिंदु तक पहुंचता हूं। – jan

संबंधित मुद्दे