简单实现SplitContainer分隔线中的按钮被按下时将左边Panel折叠

这个博客介绍了一个自定义的SplitPanel控件,它扩展了SplitContainer,并在其分隔线上添加了一个按钮。当按钮被点击时,可以实现左侧Panel的折叠和展开。控件还提供了设置分隔线颜色和最小距离的功能。
摘要由CSDN通过智能技术生成
using System;
using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
namespace My.Controls
{
    public class SplitPanel : SplitContainer
    {
        #region ■宣言__________________________________________________________________

        private Button splitterButton;

        private Control oldParentControl = null;

        private event Action SplitterWidthChanged;

        private int minSplitterDistance = 10;

        private int previousSplitterDistance;

        private Point pntPosition = new Point(0, 0);

        #endregion

        #region ■プロパティ____________________________________________________________

        /// <summary>
        /// 分割ボタンの背景色
        /// </summary>
        [Description("分割ボタンのマウスダウン背景色")]
        public Color _SplitButtonMouseDownBackColor
        {
            get
            {
                return this.splitterButton.FlatAppearance.MouseDownBackColor;
            }
            set
            {
                this.splitterButton.FlatAppearance.MouseDownBackColor = value;
                this.splitterButton.BackColor = value;
            }
        }

        /// <summary>
        /// 分割ボタンの背景色
        /// </summary>
        [Description("分割ボタンのマウスオーバー背景色")]
        public Color _SplitButtonMouseOverBackColor
        {
            get
            {
                return this.splitterButton.FlatAppearance.MouseOverBackColor;
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值