• 大小: 235KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-04-06
  • 语言: C#
  • 标签:

资源简介

1、实现在DataGridView控件中添加进度条列,以进度条及白分比的方式在单元格中显示数据。 2、实现在进度条中显示进度百分比文本。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Mesnac.Controls.Default.ProgressBarGridView
{
    /// 
    /// 进度条单元格类定义
    /// 

    public class DataGridViewProgressBarCell : DataGridViewCell
    {
        #region 定义字段

        private Color _progressBarColor = Color.Green; //进度条的默认背景颜色绿色;
        private bool _isShowProgressText = true;       //进度条是否显示百分比文本,默认显示

        #endregion

        #region 构造方法

        /// 
        /// 默认构造方法
        /// 

        public DataGridViewProgressBarCell()
        {
            this.ValueType = typeof(int);
        }
 
        /// 
        /// 设置进度条的背景色;
        /// 

        /// 进度条的背景色
        public DataGridViewProgressBarCell(Color progressBarColor) : base()
        {
            this._progressBarColor = progressBarColor;
        }
        /// 
        /// 设置是否显示进度百分比文本
        /// 

        /// 是否显示进度百分比文本
        public DataGridViewProgressBarCell(bool isShowProgressText) : base()
        {
            this._isShowProgressText = isShowProgressText;
        }
        /// 
        /// 设置进度条的背景色和是否显示进度百分比文本
        /// 

        /// 进度条的背景色
        /// 是否显示进度百分比文本
        public DataGridViewProgressBarCell(Color progressBarColor bool isShowProgressText) : base()
        {
            this._progressBarColor = progressBarColor;
            this._isShowProgressText = isShowProgressText;
        }

        #endregion

        public bool IsShowProgressText
        {
            set
            {
                this._isShowProgressText = value;
            }
        }

        #region 重写绘制方法

        protected override void Paint(Graphics graphics Rectangle clipBounds Rectangle cellBounds int rowIndex DataGridViewElementStates cellState object value object formattedValue string errorText DataGridViewCellstyle cellstyle DataGridViewAdvancedBorderstyle advancedBorderstyle DataGridViewPaintParts paintParts)
        {
            try
            {
                Console.WriteLine(“Paint“);

                DataGridViewProgressBarCellstyle dgvcs = cellstyle as DataGridViewProgressBarCellstyle;
                if (dgvcs != null)
                {
                    this._progressBarColor = dgvcs.ProgressBarColor;
                    this._isShowProgressText = dgvcs.IsShowProgressText;

                    Console.WriteLine(dgvcs.ProgressBarColor.ToString());
                    Console.WriteLine(dgvcs.IsShowProgressText);
                }

                using (SolidBrush backBrush = new SolidBrush(cellstyle.BackColor))
                {
                    graphics.F

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-07-10 13:31  SlnProgressBarGridViewTest.VS2013\
     目录           0  2019-07-10 09:34  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\
     文件        2776  2019-07-10 11:20  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\Mesnac.Controls.Default.csproj
     目录           0  2019-07-10 13:21  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\ProgressBarGridView\
     文件        4722  2019-07-10 11:36  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\ProgressBarGridView\DataGridViewProgressBarCell.cs
     文件        1491  2019-07-10 11:34  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\ProgressBarGridView\DataGridViewProgressBarCellstyle.cs
     文件         709  2019-07-10 13:21  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\ProgressBarGridView\DataGridViewProgressBarColumn.cs
     目录           0  2019-07-10 09:33  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\Properties\
     文件        1370  2019-07-10 09:33  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\Properties\AssemblyInfo.cs
     目录           0  2019-07-10 09:33  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\bin\
     目录           0  2019-07-11 11:06  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\bin\Debug\
     文件        7168  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\bin\Debug\Mesnac.Controls.Default.dll
     文件       22016  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\bin\Debug\Mesnac.Controls.Default.pdb
     目录           0  2019-08-07 14:04  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\bin\Release\
     目录           0  2019-07-10 09:33  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\
     目录           0  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\
     文件        6780  2019-07-10 11:12  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
     文件         558  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\Mesnac.Controls.Default.csproj.FileListAbsolute.txt
     文件        2207  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\Mesnac.Controls.Default.csprojResolveAssemblyReference.cache
     文件        7168  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\Mesnac.Controls.Default.dll
     文件       22016  2019-08-07 13:59  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\Mesnac.Controls.Default.pdb
     目录           0  2019-08-07 14:04  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Default\obj\Debug\TempPE\
     目录           0  2019-07-12 14:40  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\
     文件        3294  2019-07-12 14:42  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\Mesnac.Controls.Feeding.csproj
     目录           0  2019-07-12 16:20  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBar\
     文件        1074  2019-07-12 14:41  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBar\WeightProgressBar.Designer.cs
     文件        7739  2019-07-12 16:20  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBar\WeightProgressBar.cs
     目录           0  2019-07-11 15:00  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBarGridView\
     文件        4536  2019-07-11 16:23  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBarGridView\DataGridViewProgressBarCell.cs
     文件        1491  2019-07-11 16:23  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBarGridView\DataGridViewProgressBarCellstyle.cs
     文件         709  2019-07-11 16:23  SlnProgressBarGridViewTest.VS2013\Mesnac.Controls.Feeding\ProgressBarGridView\DataGridViewProgressBarColumn.cs
............此处省略62个文件信息

评论

共有 条评论