zoukankan      html  css  js  c++  java
  • DataGridView显示行号

    可以做成扩展控件,这里是主要代码:

    方法一:

    复制代码
    private void dataGridView2_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
            {
                
    using (var brush = new
     SolidBrush(dataGridView2.RowHeadersDefaultCellStyle.ForeColor))
                {
                    e.Graphics.DrawString((e.RowIndex 
    + 1).ToString(), dataGridView2.DefaultCellStyle.Font, brush, e.RowBounds.Location.X + 12, e.RowBounds.Y + 5
    );
                }
            }
    复制代码

    方法二:

    复制代码
    private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
            {
                
    if (e.ColumnIndex == -1 && e.RowIndex >= 0 && e.RowIndex <
     dataGridView1.Rows.Count)
                {
                    
    //dataGridView1.Rows[e.RowIndex].HeaderCell.Value = (e.RowIndex).ToString();

                    e.PaintBackground(e.ClipBounds, true);
                    e.Graphics.DrawString((e.RowIndex 
    + 1).ToString(), Font, Brushes.Black, e.CellBounds.Left + 6
    ,
                                          e.CellBounds.Top 
    + 5
    );
                    e.Handled 
    = true
    ;
                }
            }
    复制代码

    方法三:继承DataGridView扩展为自定义控件

    复制代码
    public partial class DataGridViewEx : DataGridView
        {
            
    bool showRowHeaderNumbers;

            
    /// <summary>
            
    /// 是否显示行号
            
    /// </summary>
            [Category("扩展属性"), Description("是否显示行号"), DefaultValue(false)]
            
    public bool ShowRowHeaderNumbers
            {
                
    get { return showRowHeaderNumbers; }
                
    set
                {
                    
    if (showRowHeaderNumbers != value)
                        Invalidate();
                    showRowHeaderNumbers 
    = value;
                }
                
    //get;
                
    //set;
            }

            
    public DataGridViewEx()
            {
                InitializeComponent();
            }

            
    protected override void OnRowPostPaint(DataGridViewRowPostPaintEventArgs e)
            {
                
    if (ShowRowHeaderNumbers)
                {
                    
    string title = (e.RowIndex + 1).ToString();
                    Brush brush 
    = Brushes.Black;
                    e.Graphics.DrawString(title, DefaultCellStyle.Font, brush, e.RowBounds.Location.X 
    + RowHeadersWidth / 2 - 4, e.RowBounds.Location.Y + 4);
                }

                
    base.OnRowPostPaint(e);
            }
        }
  • 相关阅读:
    WUSTOJ 1247: 递增或递减排序(Java)
    WUSTOJ 1246: 字符串排序(Java)
    Oracle查询部门工资最高员工的两种方法 1、MAX()函数 2、RANK()函数
    Oracle数据库——用户(USER)
    Firefox在新标签页打开“书签”和“搜索栏”(无需插件)
    Oracle数据库——ROWNUM
    Oracle数据库 SET ECHO [ON|OFF]
    WUST Oracle数据库 实验一实验二
    优课在线 嵌入式系统(胡威)2018春季测验 参考解析
    Oracle数据库——查询所有用户
  • 原文地址:https://www.cnblogs.com/ewyb/p/2590006.html
Copyright © 2011-2022 走看看