共用方式為


如何停駐和錨定控件 (Windows Forms .NET)

如果您要設計使用者可以在運行時間重設大小的表單,表單上的控件應適當重設大小並重新置放。 當表單變更大小時,控件有兩個屬性可協助自動放置和重設大小。

  • Control.Dock

    停駐的控件會填滿控件容器的邊緣,可以是窗體或容器控件。 例如,Windows 檔案總管會將控件 TreeView 停駐在視窗左側,並將控件 ListView 停駐在窗口右側。 停駐模式可以是控件容器的任何一端,或設定為填滿容器的剩餘空間。

    示範控件不同停駐模式的視窗表單

    控件會以反向 z 順序停駐,而 Dock 屬性會與 AutoSize 屬性互動。 如需詳細資訊,請參閱 自動重設大小

  • Control.Anchor

    當錨定控件的窗體重設大小時,控件會維持控件與錨點位置之間的距離。 例如,如果您的 TextBox 控件錨定在窗體的左、右和下邊緣,當窗體重設大小時,控件會水準重設大小, TextBox 使其與窗體的左右兩側保持相同的距離。 控件也會垂直定位本身,使其位置一律與窗體的下邊緣相同。 如果控件未錨定且窗體重設大小,則會變更控件相對於窗體邊緣的位置。

    示範控件不同錨點模式的 Windows 窗體

如需詳細資訊,請參閱 控件的位置和配置。

停駐控件

控件會藉由設定其 Dock 屬性來停駐。

注意

繼承的控件必須 Protected 能夠停駐。 若要變更控件的存取層級,請在 [屬性] 視窗中設定其修飾詞屬性

使用設計工具

使用 Visual Studio 設計工具 [屬性 ] 視窗來設定控制件的停駐模式。

  1. 選取設計工具中的控制件。

  2. 在 [屬性] 視窗中,選取 Dock 屬性右邊的箭號。

    顯示 Dock 屬性的 .NET Windows Forms Visual Studio [屬性] 窗格。

  3. 選取代表您要停駐控件之容器邊緣的按鈕。 若要填滿控件窗體或容器控件的內容,請按中央方塊。 按 (無) 停用停駐。

    已展開 Dock 屬性的 .NET Windows Forms Visual Studio [屬性] 窗格。

控件會自動重設大小,以符合停駐邊緣的界限。

以程式設計方式設定 Dock

  1. Dock在控件上設定 屬性。 在此範例中,按鈕停駐在其容器右側:

    button1.Dock = DockStyle.Right;
    
    button1.Dock = DockStyle.Right
    

錨定控件

控件會藉由將其 Anchor 屬性設定為一或多個值,以錨定至邊緣。

注意

某些控件,例如 ComboBox 控件,具有其高度的限制。 將控件錨定在其表單或容器底部,無法強制控件超過其高度限制。

繼承的控件必須 Protected 能夠錨定。 若要變更控制元件的存取層級,請在 [屬性] 視窗中設定其 Modifiers 屬性

使用設計工具

使用 Visual Studio 設計工具 [屬性 ] 視窗來設定控件的錨定邊緣。

  1. 選取設計工具中的控制件。

  2. 在 [屬性] 視窗中,選取 Anchor 屬性右邊的箭號。

    顯示 [錨點] 屬性的 .NET Windows Forms Visual Studio [屬性] 窗格。

  3. 若要設定或取消設定錨點,請選取交叉的頂端、左、右或下臂。

    已展開 Anchor 屬性的 .NET Windows Forms Visual Studio [屬性] 窗格。

以程式設計方式設定錨點

  1. Anchor在控件上設定 屬性。 在此範例中,按鈕會錨定在其容器的右側和底部:

    button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
    
    button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
    

另請參閱