2010-09-16 13 views
12

मैं एक नियंत्रण बना रहा हूं जिसमें 15x15 = 225 बटन शामिल हैं, और आकार बदलने योग्य होना चाहिए। क्योंकि यह एक ग्रिड है, एंकरिंग और डॉकिंग काम नहीं करेगा। मैंने टेबललेआउट पैनेल दोनों के साथ-साथ आकार बदलने और आकार नियंत्रण के लिए आकार बदलने की घटना को संभालने का प्रयास किया है। दोनों मामलों में, आकार बदलना अस्वीकार्य रूप से धीमा है। जब मैं मैन्युअल रूप से लेआउट को संभालने में मदद करता हूं तो आकार बदलने के चरण में लेआउट को पुन: प्रस्तुत/पुन: प्रारंभ करें।सी # विनफॉर्म: कुशलतापूर्वक कई नियंत्रण प्रदर्शित करना

क्या कुछ मौलिक है कि मैं चीजों को गति में बदल सकता हूं, या यह मूल नियंत्रणों की सीमा है? मैं समझता हूं कि मैं स्क्रैच से कस्टम नियंत्रण बना सकता हूं, क्लिक को संभालने और खुद को चित्रित कर सकता हूं - हालांकि यदि संभव हो तो मैं देशी नियंत्रणों के साथ रहना पसंद करूंगा।

संपादित

मैं जानता हूँ कि यह बटन का एक बहुत कुछ है। मेरा सवाल एक तकनीकी है; यूआई डिजाइन के बारे में कोई नहीं।

+2

यह बहुत सारे बटनों का नरक है। आपको बिल्ली के लिए कितने बटन की आवश्यकता है? –

+0

+1 एलिस्टेयर पिट्स के लिए +1। हमें जीयूआई पर दिखाई देने वाले कई बटनों से बचना चाहिए। मुझे लगता है कि अंतिम उपयोगकर्ता भी मेरे साथ सहमत हैं। –

+0

यह देखने के लिए एप्लिकेशन को प्रोफ़ाइल दें कि यह इतना लंबा क्यों ले रहा है। –

उत्तर

6

WinForms दुर्भाग्य से एक ही समय में कई नियंत्रणों को प्रदर्शित करने में संभाल नहीं करता है।

यदि मैं आपकी स्थिति में था तो मैं पहले विचार करता हूं कि क्या मैं कई पृष्ठों में फॉर्म को विभाजित कर सकता हूं। कई मामलों में उपयोगकर्ता के लिए भी समझना आसान होगा।

लेकिन आपके मामले में यह एक विकल्प प्रतीत नहीं होता है। क्या आप माइन्सवीपर स्टाइल गेम की तरह कुछ कर रहे हैं? वहां आपके पास बटन का ग्रिड है जो सभी क्लिक करने योग्य हैं। ऐसी स्थिति में मैं सुझाव दूंगा कि आप एक कस्टम मालिक के लिए तैयार नियंत्रण के लिए जाएं जहां आप सभी नियंत्रणों को एक नियंत्रण में समेकित करते हैं। एक समग्र नियंत्रण न बनाएं जिसमें 225 बटन हों - इससे कोई मदद नहीं मिलेगी :-)

WPF पर स्विच करने का अंतिम विकल्प हो सकता है। डब्ल्यूपीएफ हार्डवेयर त्वरित प्रतिपादन का उपयोग करता है, इसलिए यह तेज़ हो सकता है, लेकिन इतने सारे नियंत्रणों के साथ भी इससे मदद मिल सकती है।

+0

गोचा। क्या आप मुझे "इसे संभाल नहीं सकते" से परे कुछ कह सकते हैं - क्या वहां कोई ब्लॉग पोस्ट/प्रदर्शन स्पष्टीकरण है जो मुझे समझने में मदद कर सकता है कि चीजों को मरने के कारण क्या हो रहा है? तकनीकी प्रश्न पूछने के लिए स्मार्ट-एलेकी की कोशिश नहीं करने के लिए +1। मुझे पता है कि यह बहुत सारे बटन हैं और मैं इसे समझता हूं। कस्टम नियंत्रण यह है। – phillipwei

+0

मैं यहां व्यक्तिगत अनुभव से बात कर रहा हूं :-) किसी भी ब्लॉग पोस्ट से काफी बेहतर ... हेहे। –

+0

वास्तव में नहीं। मैंने समान सामान करने की कोशिश की है और पूरी तरह से अनुपयोगी रूप से समाप्त हो गया है। निष्पादन एक निश्चित बिंदु तक ठीक है जहां यह टूट जाता है। हो सकता है कि आप 10x10 ग्रिड, शायद 12x12 या 8x8 से दूर हो सकें, लेकिन एक निश्चित बिंदु पर यह अनुपयोगी हो जाएगा। –

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