SplitContainerControl用於界面面板控制,使用起來也非常方便,可以設置間隔條的方向,但不能設置間隔條寬度,默認的寬度略寬了些。

只能通過重寫CreateContainerInfo方法才可實現間隔條寬度。相關代碼如下:
SplitContainerControlEx類
[ToolboxItem(true)]
public class SplitContainerControlEx : SplitContainerControl
{
private int _splitterWidth;
public int SplitterWidth
{
get => _splitterWidth;
set
{
_splitterWidth = value;
OnPropertiesChanged();
PerformLayout();
}
}
protected override SplitContainerViewInfo CreateContainerInfo()
{
return new SplitContainerViewInfoEx(this);
}
}
SplitContainerViewInfo類:
public class SplitContainerViewInfoEx : SplitContainerViewInfo
{
public SplitContainerViewInfoEx(SplitContainerControl container)
: base(container)
{
}
protected override int GetSplitterSize()
{
return ((SplitContainerControlEx) this.Container).SplitterWidth;
}
}
如果寬度設置得太小,不容易操作,建議至少設置為2.

