如何:定义拆分窗口中的大小调整和定位行为

SplitContainer 控件的面板非常适合用户调整大小和操作。 有时,您可能希望以编程方式控制分隔条,包括它的位置以及可移动的范围。

SplitterIncrement 属性和 SplitContainer 控件上的其他属性使你可以精确控制用户界面的行为,以满足你的需求。 下表列出了这些属性。

名字 描述
IsSplitterFixed 属性 确定拆分器是否可通过键盘或鼠标移动。
SplitterDistance 属性 确定从左边缘或上边缘到可移动拆分条之间的距离(以像素为单位)。
SplitterIncrement 属性 确定拆分器可由用户移动的最小距离(以像素为单位)。

下面的示例修改 SplitterIncrement 属性以创建“对齐拆分器”效果;当用户拖动拆分器时,它以 10 像素(而不是默认的 1 像素)为单位递增。

定义 SplitContainer 重设大小行为

  1. 在过程中将 SplitterIncrement 属性设置为所需的大小,以便实现拆分器的“对齐”行为。

    在下面的代码示例中,在窗体的 Load 事件中,SplitContainer 控件中的拆分器设置为在拖动时跳转 10 像素。

    Private Sub Form1_Load(ByVal sender As System.Object, _  
        ByVal e As System.EventArgs) Handles MyBase.Load  
        Dim splitSnapper as new SplitContainer()  
        splitSnapper.SplitterIncrement = 10  
        splitSnapper.Dock = DockStyle.Fill  
        splitSnapper.Parent = me  
    End Sub  
    
    private void Form1_Load(System.Object sender, System.EventArgs e)  
    {  
        SplitContainer splitSnapper = new SplitContainer();  
        splitSnapper.SplitterIncrement = 10;  
        splitSnapper.Dock = DockStyle.Fill;  
        splitSnapper.Parent = this;  
    }  
    

    (Visual C#)将以下代码置于表单的构造函数中以注册事件处理程序。

    this.Load += new System.EventHandler(this.Form1_Load);  
    

    将拆分器略微向左或向右移动不会产生明显的效果;但当鼠标指针向任一方向移动 10 像素时,拆分器将对齐到新位置。

另请参阅