2016-09-16 5 views
1

Form에 TableLayoutPanel을 추가했습니다. 이제이 TableLayoutPanel에 버튼을 추가하기 위해 동적으로 열을 만들려고합니다. 문제는 하나의 열만 만들어져 하나의 버튼 만 표시한다는 것입니다.TableLayoutPanel을 사용하여 동적 열을 만드는 방법은 무엇입니까?

어떻게하면됩니까?

시도 중입니다.

private void findAllCategorias() { 
      IList<CategoriaProduto> _lista = cDAO.findAll();    
      int count = 0; 
      foreach (CategoriaProduto x in _lista) { 
       Button b = new Button(); 
       b.Name = Convert.ToString(x.id); 
       b.Text = x.descricao; 
       b.Size = new Size(100,65); 
       b.Click += new EventHandler(btnCategoria_Click); 
       b.BackColor = Color.FromArgb(255,255,192);      
       ToolTip tt = new ToolTip(); 
       tt.SetToolTip(b, Convert.ToString(x.id)); 
       panel.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize)); 
       panel.Controls.Add(b, count++, 0);     
      } 
     } 

나는이 결과를 원하는 ColumnStyle가 (실제로는 선택 사항입니다), 당신은 ColumnCount 재산 증가하는 것이 필요 충분하지 않다 추가

enter image description here

+1

를' columnCount ++'? – adv12

답변

2

:

// ... 
panel.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize)); 
panel.ColumnCount++; 
panel.Controls.Add(b, count++, 0);     
// ... 
+0

완벽한 ... 고마워! – FernandoPaiva