c# datagridview列头添加复选框实现全选

1.datagridview列头添加复选框    网上查了很多资料,大都是通过添加自绘复选框类来实现的。经验证效果不错。/*****************************以下是自定义在datagridview列头绘制复选框*********************************************/ //定义继承于DataGridViewColumn
摘要由CSDN通过智能技术生成


1.datagridview列头添加复选框
    网上查了很多资料,大都是通过添加自绘复选框类来实现的。经验证效果不错。

/*****************************以下是自定义在datagridview列头绘制复选框*********************************************/
    //定义继承于DataGridViewColumnHeaderCell的类,用于绘制checkbox,定义checkbox鼠标单击事件
    public class datagridviewCheckboxHeaderCell : DataGridViewColumnHeaderCell
    {
        public delegate void HeaderEventHander(object sender, datagridviewCheckboxHeaderEventArgs e);
        public event HeaderEventHander OnCheckBoxClicked;
        Point checkBoxLocation;
        Size checkBoxSize;
        bool _checked = false;
        Point _cellLocation = new Point();
        System.Windows.Forms.VisualStyles.CheckBoxState _cbState =
            System.Windows.Forms.VisualStyles.CheckBoxState.UncheckedNormal;

        //绘制列头checkbox
        protected override void Paint(System.Drawing.Graphics graphics,
           System.Drawing.Rectangle clipBounds,
           System.Drawing.Rectangle cellBounds,
           int rowIndex,
           DataGridViewElementStates dataGridViewElementState,
           object value,
           object formattedValue,
           string errorText,
           DataGridViewCellStyle cellStyle,
           DataGridViewAdvancedBorderStyle advancedBorderStyle,
           DataGridViewPaintParts paintParts)
        {
            base.Paint(graphics, clipBounds, cellBounds, rowIndex,
  • 2
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值