DataGridView

所有的代码都是通过 ‘有道云笔记’中的Markdown编辑器进行编辑,然后生成文件直接导入,也节省了来去复制粘贴内容造成不必要的错误。所有代码都是手敲,也是对代码量的一点点提高,虽然很多不懂,都需要过程。Thank

在datagridview中显示数据

private void Form1_Load(object sender,EventArgs e)
{
    SqlConnection conn=new SqlConnection("server=.;database=db_Csharp;uid=sa;pwd=123456");
    SqlDataAdapter sda=new SqlDataAdapter("select * from tb_emp",conn);
    DataSet ds=new DataSe();
    sda.Fill(ds,"emp");
    dataGridView1.DataSource=ds.Tables[0];
}

获取dgv控件中得到当前单元格

//public DataGridViewCell CurentCell{get;set;}
SqlConnection conn
SqlDataAdapter sda;
DataSet ds=null;

private void Form_Load(object sender,EventArgs e)
{
    conn=new SqlConnection("server=.;database=db_Csharp;uid=sa;pwd=123456");
    sda=new SqlDataAdapter("select * from tb_teacher",conn);
    ds=new DataSet();
    sda.Fill(ds,"teacher")
    dataGridView1.DataSource=ds.Tables[0];


}
private void button1_Click(object sender,EventArgs e)
{
    string msg=String.Format("第{0}行,第{1}列",dataGridView1.CurrentCell.RowIndex,dataGridView1.CurrentCell.ColumnIndex);
    //使用Current.RowIndex 和Current.ColumnIndex 获取数据的行和列
    label1.Text="选择的单元格为:"+ msg;

}

dgv直接修改数据

SqlConnection conn;
SqlDataAdapter adapter;

private void button1_Click(object sender, EventArgs e)
{
    conn=new SqlConnection("server=.;database=db_Csharp;uid=sa;pwd=123456");
    SqlDataAdapter sda =new SqlDataAdapter("select * from tb_emp",conn);
    DataSet ds =new DataSet();
    sda.Fill(ds);
    dataGridView1.DataSource=ds.Tables[0];
    dataGridView1.RowHeadersVisible=false;
    //禁止显示行标题

    for(int i=0;i<dataGridView1.ColumnCount;i++)
    {
        dataGridView1.Columns[i].Width=84;

    }
    button1.Enabled=false;
    dataGridView1.Columns[0].ReadOnly=true;
    //将控件设置为只读
}
private DataTable dbconn(string strSql)     //建立datatable类型的方法
{
    conn.Open();
    this adapter=new SqlDataAdapter(strSql,conn);   //实例化
    DataTable dtSelect=new DataTable();  //实例化DataTable
    int rnt=this.adapter.Fill(dtSelect); //填充DataTable
    conn.Close();
    return dtSelect ;  //返回DataTable


}

private void button2_Click(object sender,EventArgs e)
{
    if(dbUpdate())
    {
        MessageBox.Show("修改成功!");
    }

}
private Boolean dbUpdate()
{
    string strSql="select * from tb_emp"
    DataTable dtUpdate= new DataTable();
    dtUpdate=this.dbconn(strSql);
    dtUpdate.Rows.Clear();
    DataTable dtShow=new DataTable();
    dtShow=(DataTable)this.dataGridView1.DataSource;

    for(int i=0;i<dtShow.Rows.Count;i++)
    {
    dtUpdate.ImportRow(dtShow.Rows[i])  ;  


    }
     try
     {
         this.conn.Open();
         SqlCommandBuilder CommandBuilder;
         CommandBuilder=new SqlCommandBuilder(this.apater);
         this.adapter.Update(dtUpdate);
         this.conn.Close();

     }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message.ToString());
        return false;
    }
    dtUpdate.AcceptChanges();
    return true;
}

dataGridView1.AllowUserToAddRows=false; //禁止添加行

dataGridView1.AllowUserToDeleteRows=false;//禁止删除行

dataGridView1.ReadOnly=true;//控件中的数据为只读

private void Form_Load(object sender,EventArgs e)
{
    dataGridView1.ColumnCount=4;//指定dgv控件显示的行数
    dataGridView1.ColumnHeadersVisable=true;//显示列标题

    DataGridViewCellStyle columnHeaderStyle=new DataGridViewCellStyle();//设置标题列的样式

    columnHeaderStyle.BackColor=Color.Beige;  //设置颜色
    columnHeaderStyle.Font=new Font("Verdana",10,FontStyle.Bold);//设置字体颜色
    dataGridView1.ColumnHeadersDefultCellStyle=columnheaderStyle;//样式

    //设置dataGirdView控件的标题列名

    dataGridView1.Columns[0].Name="编号";
    dataGridView1.Columns[1].Name="姓名";
    dataGridView1.Columns[2].Name="年龄";
    dataGridView1.Columns[3].Name="性别";

    //建立6行数据

    string[] row1=new string[]{"0001","小李","28","男"};//字符串数组
    string[] row2=new string[]{"0002","小王","27","男"};
    string[] row3=new string[]{"0003","小倩","25","女"};
    string[] row4=new string[]{"0004","小张","27","男"};
    object[] rows=new object[]{row1,row2,row3,row4,row5,row6};
    foreach(string[] rowArray in rows)   //使用foreach语句循环添加
    {
        dataGridView1.Rows.Add(rowArray);  //

    }



}




Headers 编号 姓名 年龄 性别
row 0001 小李 28
row 0002 小王 27
row 0003 小倩 25
row 0004 小张 27

猜你喜欢

转载自blog.csdn.net/awiner/article/details/78847430
今日推荐