WPF

2009-01-02 6 views
10

में एक combobox की ड्रॉपडाउन ऊंचाई सेट करना मेरे पास WPF में एक combobox है कि मैं रन-टाइम पर आइटम जोड़ता हूं (किसी सूची में बाध्यकारी डेटा के माध्यम से)। मैं ड्रॉपडाउन बॉक्स की ऊंचाई को गतिशील रूप से सेट करना चाहता हूं ताकि सभी (या अधिकतर) आइटम दिखाए जा सकें। दुर्भाग्यवश ऐसा लगता है कि ड्रॉपडाउन की ऊंचाई एक बार सेट की जाती है और गतिशील रूप से परिवर्तित नहीं किया जा सकता है। यह हमेशा एक ही आकार लगता है।WPF

क्या ड्रॉपडाउन ऊंचाई समायोजित करने के लिए कुछ अपेक्षाकृत सरल है?


हां, मैंने इसे combobox में आइटम जोड़ने के बाद इसे सेट करने का प्रयास किया है। डीबगर में ऐसा लगता है कि नया मान वहां है। हालांकि, जब मैं ड्रॉपडाउन खोलता हूं, तो यह अपने स्वयं के चयन के आकार में गिर जाता है। मैंने मैक्सड्रॉपडाउन हाइट को अतिरंजित करने की कोशिश की है और इसे "ऑटो" पर भी कोई फायदा नहीं हुआ है।

उत्तर

14

संपत्ति मैक्सड्रॉपडाउन हाइट कॉम्बो बॉक्स पर निर्भरता संपत्ति है जो ड्रॉप डाउन सूची की ऊंचाई को नियंत्रित करती है। चूंकि यह एक निर्भरता संपत्ति है, इसलिए इसका मूल्य गतिशील रूप से सेट किया जा सकता है।

क्या आपने इस मान को सेट करने का प्रयास किया है?

+0

में यह टिप्पणी कारण यह एक अच्छा जवाब नहीं है क्योंकि वह एक सूची के लिए डेटा बाइंडिंग है। मुझे नहीं पता क्यों, लेकिन सूची में बाध्य होने पर मैक्सड्रॉपडाउन हाइट का कोई प्रभाव नहीं पड़ता है। यदि आप एक पर्यवेक्षण चयन में बदल जाते हैं, जैसे कि @ किममोली ने कहा, यह काम करता है। – BrianVPS

0

यह सुनिश्चित करने के लिए कि आपके पास ड्रॉप-डाउन पैनल आकार को प्रभावित करने वाली शैली समस्या नहीं है, अपने कॉम्बोबॉक्स की शैली = {x: Null} सेट करें।

4

मेरे लिए, मुद्दा यह था कि कॉम्बोबॉक्स ड्रॉपडाउन में 95 पिक्सेल की ऊंचाई थी जो वस्तुओं की मात्रा के संबंध में थी।

कॉम्बोबॉक्स के लिए मेरा डेटा स्रोत Collection<> था, लेकिन इसे ObservableCollection<> पर बदलने के बाद, कॉम्बोबॉक्स ड्रॉपडाउन सभी आइटम दिखाता है।

अब भी MaxDropDownHeight संपत्ति ठीक काम करता है।

रेफरी: यहां Make the dropdown of a combobox be shorter?

+0

मैंने मैक्सड्रॉपडाउन हाइट का उपयोग किया – Ziggler

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