2011-04-21 12 views
9

मेरे पास 5 या 7 कॉलम के साथ एक टेबल LayoutPanel है। उपयोगकर्ता 5 से 7 दिनों तक स्विच करने के लिए "सप्ताहांत दिखाएं/छुपाएं" बटन पर क्लिक कर सकते हैं।रनलाइम पर टेबललेआउट पैनल कॉलम चौड़ाई: अजीब व्यवहार या बग

समस्या: जब आप 5 दिनों के साथ शुरू करते हैं, तो 5/7 बटन दबाएं, 7 कॉलम समान रूप से नहीं रुकते हैं ... कॉलम 6 बाकी के बाद बहुत छोटा होता है। अजीब बात यह है कि यदि आप 7 दिनों से शुरू करते हैं, तो सब ठीक दिखता है। जब आप 5 पर स्विच करते हैं और फिर 7 पर वापस जाते हैं, तब भी सब ठीक है ??

void lblSatSunday_Click(object sender, EventArgs e) 
    { 
     ShowZaterdagZondag = !ShowZaterdagZondag; 
     AddDisplayControls(); 
    } 

    private void AddDisplayControls() 
    { 
     tblPanel.SuspendLayout(); 
     tblPanel.Controls.Clear(); 
     tblPanel.ColumnCount = ShowZaterdagZondag ? 7 : 5; // <<<------- 
     tblPanel.RowCount = 1; 
     tblPanel.GrowStyle = TableLayoutPanelGrowStyle.FixedSize;//.AddColumns; 
     for (int i = 0; i < tblPanel.ColumnCount; i++) 
     { 
      ColumnStyle cs = new ColumnStyle(SizeType.Percent, 100/tblPanel.ColumnCount); 
      tblPanel.ColumnStyles.Add(cs); 

      //Add accordeon 
      Accordeon a = new Accordeon(); 
      //Removed code for reading 
      tblPanel.Controls.Add(a); 
     } 
     tblPanel.ResumeLayout(); 
    } 
+2

tblPanel.ColumnStyles.Clear जोड़े(); –

+0

दोह! धन्यवाद! :-) –

उत्तर

12

पाश के लिए पहले कोड की इस पंक्ति जोड़ें:

tblPanel.ColumnStyles.Clear(); 
संबंधित मुद्दे