मैं थोड़ी देर के लिए इसके साथ लड़ रहा हूं, और पाया है कि कई अन्य लोग TableLayoutPanel (.NET 2.0 Winforms) के साथ भी संघर्ष करते हैं।Winforms TableLayoutPanel प्रोग्रामेटिक रूप से पंक्तियों को जोड़ना
समस्या
मैं प्रोग्राम के रूप में नियंत्रण की पंक्तियों (अर्थात सेल प्रति एक नियंत्रण) जोड़ने के लिए एक 'खाली' TableLayoutPanel, जो 10 कॉलम परिभाषित है लेने की कोशिश कर रहा हूँ कार्यावधि में तो,।
एक सोचा होगा कि यह
myTableLayoutPanel.Controls.Add(myControl, 0 /* Column Index */, 0 /* Row index */);
के रूप में सरल किया जाना चाहिए लेकिन वह (मेरे लिए) पंक्तियों नहीं जोड़ता है। तो शायद एक पंक्ति शैली
myTableLayoutPanel.RowStyles.Clear();
myTableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Absolute, 30F));
लेकिन यह भी काम नहीं करता है। मैंने चारों ओर खोद दिया है और पता चला है कि myTableLayoutPanel.RowCount
डिज़ाइन समय से रन टाइम में उपयोग बदलता है, इसलिए myTableLayoutPanel.RowCount++;
वास्तव में एक और पंक्ति नहीं जोड़ता है, इसके लिए RowStyle प्रविष्टि जोड़ने से पहले/बाद में भी नहीं!
मुझे एक और संबंधित समस्या का सामना करना पड़ रहा है यह है कि नियंत्रण प्रदर्शन में जोड़ा जाएगा, लेकिन वे सभी टेबललेआउट पैनेल के बिंदु 0,0 पर प्रस्तुत किए जाते हैं, इसके अतिरिक्त वे सेल सीमाओं के भीतर भी बाध्य नहीं होते हैं कि वे इन्हें प्रदर्शित किया जाना चाहिए (यानी डॉक = डॉक स्टाइल के साथ। फिर भी वे बहुत बड़े/छोटे तरीके से दिखाई देते हैं)।
क्या किसी के पास रनटाइम पर & नियंत्रण जोड़ने का एक कामकाजी उदाहरण है?
रोशस्टाइल जोड़ना वास्तव में RowStyles.Count() –