首页 > 其他 > 详细

SplitContainerControl重写间隔宽度

时间:2020-06-21 22:47:51      阅读:163      评论:0      收藏:0      [点我收藏+]

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.

技术分享图片

SplitContainerControl重写间隔宽度

原文:https://www.cnblogs.com/liweis/p/13174382.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!