簡體   English   中英

C#TableLayoutPanel填充

[英]C# TableLayoutPanel fill

默認情況下,在TableLayoutPanel中,行或列中的最后一個元素占用剩余空間。 如何獲得倒數第二個元素或任何其他元素占用盡可能多的空間,而最后一個元素僅占用所需空間的布局?

這取決於其他行的設置。 假設所有其他行都是自動調整大小或固定大小,那么將倒數第二行的大小設置為100%就可以了。 設計人員生成的代碼如下所示:

this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());

我已經使用Windows Forms和.Net Framework 4進行了測試;

最簡單的解決方案似乎是創建一個表布局面板,然后將控件嵌入每個列中。 完成后,將所有列的大小設置為“ AutoSize”。

然后,選擇倒數第二列並將大小設置為“ 100%”

這是我設計師的代碼:

    tableLayoutPanel1 = new TableLayoutPanel();
    tableLayoutPanel1.ColumnCount = 4;
    tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
    tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
    tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
    tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());

確保先嵌入控件,因為如果其他單元格中沒有內容,則將倒數第二列設置為100%的大小,然后很難使用設計器將控件作為100%列有效地放置在空單元格中。竊取”他們的空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM