簡體   English   中英

當Dock = Fill時調整UserControl的大小

[英]Make UserControl resize when Dock = Fill

我正在制作的UserControl有問題。 它由TableLayoutPanel組成,其中包含另一個具有ListView TableLayoutPanel 我想使其可調整大小,以使其適合我的應用程序的左面板,並在某種程度上類似於Visual Studio中的“工具箱”。 問題是調整面板大小時控件無法縮放。

UserControl嵌入在面板中,其中Dock = FillAnchor = Tob, Left, Bottom, Right 同樣,其中的所有控件都采用這種方式。 我怎樣才能解決這個問題?

編輯:這是WinForms,而不是XAML。

您可能正在尋找TableLayoutPanel上的AutoSize屬性以及該面板的AutoSize ColumnType。 您可以通過簡單地自動調整表布局面板的大小(GrowAndShrink)來實現Dock = Fill之類的功能,使其始終適合您的內部控件。 請發布您的設計器代碼,以查看如何將控件嵌入到其他控件中。

我懷疑您的調整大小問題來自於TableLayoutPanel內部控件的調整大小策略。

表格布局面板非常棘手。 至於你想跟着表板的單元的大小調整策略,在細胞中控制要么是Dock.Fill或錨=頂部,左,下,右。

基本上:

  • 在Il中,您希望網格單元格適應控件的大小,然后將控件置於單元格Anchor = Top,Left,Bottom,Right中,並將行/列設置為自動調整大小。

  • 如果要使單元格中的控件適應單元格的大小,請在其上使用Dock.Fill並使用百分比或絕對值來調整單元格的大小。

MSDN文檔中最好地描述了TableLayoutPanel的行為。

使用拆分面板,將您的UserControl放在左側面板中並Dock.Fill

暫無
暫無

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

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