2010-10-06 29 views
8

का उपयोग करके आइटम जोड़ते समय काम नहीं कर रहा है मैं क्लिक ईवेंट का उपयोग कर सूची के साथ कॉम्बोबॉक्स आइटम पॉप्युलेट कर रहा हूं। जब यह पहले से ही आबादी है MaxDropDownItems काम नहीं कर रहा है। क्या किसी को यह पता है कि इसे कैसे ठीक किया जाए? इतना बता गया कम से कम केवल 5 आइटम दिखाना चाहिएकॉम्बोबॉक्स.मैक्सडॉपडाउन इटम्स क्लिक ईवेंट

List<string> list = new List<string>(); 
    ComboBox cb; 
    private void button1_Click(object sender, EventArgs e) 
    { 
     cb = new ComboBox(); 

     cb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 
     cb.FlatStyle = System.Windows.Forms.FlatStyle.Popup; 
     cb.FormattingEnabled = true; 
     cb.Size = new System.Drawing.Size(94, 21); 
     cb.MaxDropDownItems = 5; 
     cb.Click +=new EventHandler(cb_Click); 

     this.Controls.Add(cb); 
    } 

    private void cb_Click(object sender, EventArgs e) 
    { 
     foreach (string str in list) 
     { 
      cb.Items.Add(str); 
     } 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     list.Add("1");list.Add("2");list.Add("3"); 
     list.Add("4");list.Add("5");list.Add("6"); 
     list.Add("7"); 
    } 

MaxDropDownItems 5 के लिए सेट है:

कोड यह alt text

उत्तर

17

आप स्थापित करने की आवश्यकता ComboBox.IntegralHeight propertyfalse करने के लिए जब आप अपने नियंत्रण सेटअप (यह true पर डिफ़ॉल्ट है)। MSDN से:

इस संपत्ति सही पर सेट किया जाता है, तो नियंत्रण स्वचालित रूप से को आकार बदलता है यह सुनिश्चित करें कि एक आइटम नहीं है आंशिक रूप से का प्रदर्शन किया। यदि आप पर आधारित कॉम्बोबॉक्स के मूल आकार को बनाए रखना चाहते हैं तो इस प्रॉपर्टी को गलत पर सेट करें।

cb.IntegralHeight = false; 
: इससे पहले कि आप Controls संग्रह करने के लिए बता गया जोड़ने

इस पंक्ति जोड़ें

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