• C#中DataGridView的使用 [C# .NET]


    在C#中,使用DataGridView控件能很方便的显示从数据库中检索的数据.

    1.首先,连接数据库


    public void Connect()
      {
        string strConn = string.Format("Data Source = IP;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DataBaseName;User ID = UserID;");
        using (sqlConnection cnn = new SqlConnection(strConn))
        {
        try
        {
          cnn.Open();
          bConn = true;
        }
        catch (Exception exp)
        {
          MessageBox.Show(exp.Message);
          bConn = false;
        }
        }
      }



    2.构造SQL语句去数据库查询,并奖结果放到DataGridView控件


    string strSql = string.Format("select * from TableName where ID < 50 order by ID");
        DataSet dataset = new DataSet();
        SqlDataAdapter myDataAdapter = new SqlDataAdapter(strSql, cnn);
        myDataAdapter.Fill(dataset);   //这句跟下面的顺序不能颠倒
        dataGridView1.DataSource = dataset.Tables[0];//填充



    3.添加DataGridView控件的右键菜单



    //在CellMouseClick里操作
    private void DataGridView_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
      {
        if (e.Button == MouseButtons.Right)
        {
          if (e.RowIndex >= 0)
          {
            dataGridView1.ClearSelection();
            dataGridView1.Rows[e.RowIndex].Selected = true; //选中
            dataGridView1.CurrentCell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];//选中单元
            DataGridRightMenu.Show(MousePosition.X, MousePosition.Y); //在点击处显示右键菜单
          }
        }
      }



    4.对DataGridView的样式进行设置


    //设置可以根据自己需要来进行
    //设置列宽
        dataGridView1.Columns[0].FillWeight = 8;
        dataGridView1.Columns[1].FillWeight = 15;
        dataGridView1.Columns[2].FillWeight = 15;
        dataGridView1.Columns[3].FillWeight = 8;
        dataGridView1.Columns[4].FillWeight = 50;
        dataGridView1.Columns[5].FillWeight = 4;
        //设置标题文字
        dataGridView1.Columns[0].HeaderText = "A";
        dataGridView1.Columns[1].HeaderText = "B";
        dataGridView1.Columns[2].HeaderText = "C";
        dataGridView1.Columns[3].HeaderText = "D";
        dataGridView1.Columns[4].HeaderText = "E";
        dataGridView1.Columns[5].HeaderText = "F";


    5.设置显示时候相隔颜色

    //颜色设置,相隔行颜色不同
    public void SetDataGridColor(int nCount)
      {
        for (int i = 0; i < this.dataGridView1.Rows.Count; )
        {
          this.dataGridView1.Rows[i].DefaultCellStyle.BackColor = System.Drawing.Color.LightGray;
          i += 2;
        }
      }
    作者:wpf之家
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Advanced Developer's Blog
    图片文字识别
    Unit test resources
    SpringBoot-mvn插件
    flask中使用proto3
    QTA-qtaf自动化测试实践
    AttributeError: module 'virtualenv' has no attribute 'create_environment'
    qtaf dick 报错 NameError: name 'dict_values' is not defined
    24点python实现
    mysql在win下移植
  • 原文地址:https://www.cnblogs.com/wpf123/p/2347452.html
Copyright © 2020-2023  润新知