我一直在爭取一段時間,並發現其他一些人也與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條目之前/之後也沒有添加!
我遇到的另一個相關問題是控件將被添加到顯示中,但它們都只是在TableLayoutPanel的點0,0處呈現,另外它們甚至不被限制在它們的Cell邊界內應該在內部顯示(即使用Dock = DockStyle.Fill,它們仍然顯得太大/太小)。
是否有人有一個在運行時添加行&控件的工作示例?
添加一個RowStyle實際上會增加RowStyles.Count() – 2015-12-18 15:58:43