DataGridView控件怎么在C#项目中使用
导读:本文共4749.5字符,通常情况下阅读需要16分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 1) 创建课程信息表创建课程信息表的 SQL 语句如下。usetest;createtablecourse(idintprimarykeyidentity(1,1),namevarchar(20),creditnumeric(3,1),remarkvarchar(50));向表中添加数据的语句如下。insertintocourse(name,cre... ...
目录
(为您整理了一些要点),点击可以直达。1) 创建课程信息表创建课程信息表的 SQL 语句如下。
usetest;createtablecourse(idintprimarykeyidentity(1,1),namevarchar(20),creditnumeric(3,1),remarkvarchar(50));
向表中添加数据的语句如下。
insertintocourse(name,credit,remark)values('计算机基石',2,'无');insertintocourse(name,credit,remark)values('C#程序开发',2.5,'机房授课');insertintocourse(name,credit,remark)values('数据库原理',1,'无');insertintocourse(name,credit,remark)values('体育',1,'无');insertintocourse(name,credit,remark)values('职业素养培训',0.5,'无');
在 SQL Server 中执行上述 SQL 语句即可完成课程信息表(course)的创建和数据的添加。
2) 课程信息管理界面的设计在课程信息管理界面中提供了 DataGridView 控件用于显示课程信息,并提供了根据课程名称查找课程信息、修改以及删除的功能。
具体的界面设计如下图所示。
3) 在加载窗体时显示所有课程信息本例中使用编写代码的方式实现 DataGridView 控件的数据绑定,并在窗体的加载事件中加入数据绑定的代码。
由于查询所有课程信息的代码将在后面的修改和删除功能中重复使用,所以单独定义一个方法来实现查询所有课程信息。代码如下。
//窗体加载事件privatevoidDataGridViewForm_Load(objectsender,EventArgse){//调用查询全部课程的方法QueryAllCourse();}//查询全部课程privatevoidQueryAllCourse(){//数据库连接串stringconnStr="DataSource=.;InitialCatalog=test;UserID=sa;Password=root";//创建SqlConnection的实例SqlConnectionconn=null;try{conn=newSqlConnection(connStr);//打开数据库conn.Open();stringsql="select*fromcourse";//创建SqlDataAdapter类的对象SqlDataAdaptersda=newSqlDataAdapter(sql,conn);//创建DataSet类的对象DataSetds=newDataSet();//使用SqlDataAdapter对象sda将查新结果填充到DataSet对象ds中sda.Fill(ds);//设置表格控件的DataSource属性dataGridView1.DataSource=ds.Tables[0];//设置数据表格上显示的列标题dataGridView1.Columns[0].HeaderText="编号";dataGridView1.Columns[1].HeaderText="课程名称";dataGridView1.Columns[2].HeaderText="学分";dataGridView1.Columns[3].HeaderText="备注";//设置数据表格为只读dataGridView1.ReadOnly=true;//不允许添加行dataGridView1.AllowUserToAddRows=false;//背景为白色dataGridView1.BackgroundColor=Color.White;//只允许选中单行dataGridView1.MultiSelect=false;//整行选中dataGridView1.SelectionMode=DataGridViewSelectionMode.FullRowSelect;}catch(Exceptionex){MessageBox.Show("查询错误!"+ex.Message);}finally{if(conn!=null){//关闭数据库连接conn.Close();}}}
运行该窗体,效果如下图所示。
4) 完成课程名称的模糊查询在“查询”按钮的单击事件中加入根据课程名称模糊查询的代码,具体如下。
//查询按钮单击事件privatevoidbutton1_Click(objectsender,EventArgse){if(textBox1.Text!=""){//数据库连接串stringconnStr="DataSource=.;InitialCatalog=test;UserID=sa;Password=root";//创建SqlConnection的实例SqlConnectionconn=null;try{conn=newSqlConnection(connStr);//打开数据库conn.Open();stringsql="select*fromcoursewherenamelike'%{0}%'";//填充占位符sql=string.Format(sql,textBox1.Text);//创建SqlDataAdapter类的对象SqlDataAdaptersda=newSqlDataAdapter(sql,conn);//创建DataSet类的对象DataSetds=newDataSet();//使用SqlDataAdapter对象sda将查新结果填充到DataSet对象ds中sda.Fill(ds);//设置表格控件的DataSource属性dataGridView1.DataSource=ds.Tables[0];}catch(Exceptionex){MessageBox.Show("出现错误!"+ex.Message);}finally{if(conn!=null){//关闭数据库连接conn.Close();}}}}
运行该窗体,查询效果如下图所示。
从上面的运行效果可以看出,在文本框中输入“计算机”,则可以实现查询所有课程 名称中含有“计算机”字样的课程信息。
5) 实现修改功能在 DataGridView 控件中选中一条课程信息,单击“修改”按钮,弹出修改课程信息界面并在该界面中显示要修改的信息,修改界面的设计如下图所示。
选中 DataGridView 控件的一条课程信息,单击“修改”按钮。
“修改”按钮的单击事件中的代码如下。//修改课程信息privatevoidbutton2_Click(objectsender,EventArgse){//获取DataGridView控件中的值//获取课程编号stringid=dataGridView1.SelectedRows[0].Cells[0].Value.ToString();//获取课程名称stringname=dataGridView1.SelectedRows[0].Cells[1].Value.ToString();//获取课程名称stringcredit=dataGridView1.SelectedRows[0].Cells[2].Value.ToString();//获取课程名称stringremark=dataGridView1.SelectedRows[0].Cells[3].Value.ToString();//创建updateForm类的对象,并将课程信息传递给修改界面updateFormupdateform=newupdateForm(id,name,credit,remark);//弹出修改信息窗口DialogResultdr=updateForm.ShowDialog();//判断是否单击确定按钮if(dr==DialogResult.OK){//调用查询全部课程方法QueryAllCourse();}}
修改界面 (UpdateForm) 中的代码如下。
//带参数的构造方法publicupdateForm(stringid,stringname,stringcredit,stringremark){InitializeComponent();textBox1.Text=id;textBox2.Text=name;textBox3.Text=credit;textBox4.Text=remark;}//确认按钮单击事件privatevoidbutton1_Click(objectsender,EventArgse){//数据库连接串stringconnStr="DataSource=.;InitialCatalog=test;UserID=sa;Password=root";//创建SqlConnection的实例SqlConnectionconn=null;try{conn=newSqlConnection(connStr);//打开数据库conn.Open();stringsql="updatecoursesetname='{0}',credit='{1}',remark='{2}'whereid='{3}'";//填充占位符sql=string.Format(sql,textBox2.Text,textBox3.Text,textBox4.Text,textBox1.Text);//创建SqlCommand类的对象SqlCommandcmd=newSqlCommand(sql,conn);//执行修改操作的SQLcmd.ExecuteNonQuery();//弹出成功提示MessageBox.Show("修改成功!");//设置当前窗体DislogResult结果为OKthis.DialogResult=DialogResult.OK;//关闭窗体this.Close();}catch(Exceptionex){MessageBox.Show("修改失败!"+ex.Message);}finally{if(conn!=null){//关闭数据库连接conn.Close();}}}//取消按钮单击事件privatevoidbutton2_Click(objectsender,EventArgse){//关闭窗体this.Close();}
修改操作的运行效果如下图所示。
6) 实现删除功能为“删除”按钮添加单击事件,将选中的课程信息删除并刷新界面中查询出来的数据。实现的代码如下。
//删除按钮的单击事件privatevoidbutton3_Click(objectsender,EventArgse){//获取DataGridView控件中选中行的编号列的值intid=int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());//数据库连接串stringconnStr="DataSource=.;InitialCatalog=test;UserID=sa;Password=root";//创建SqlConnection的实例SqlConnectionconn=null;try{conn=newSqlConnection(connStr);//打开数据库conn.Open();stringsql="delectfromcoursewhereid='{0}'";//填充占位符sql=string.Format(sql,id);//创建SqlCommand类的对象SqlCommandcmd=newSqlCommand(sql,conn);//执行SQL语句cmd.ExecuteNonQuery();//弹出消息提示删除成功MessageBox.Show("删除成功!");//调用查询全部的方法,刷新DataGridView控件中的数据QueryAllCourse();}catch(Exceptionex){MessageBox.Show("删除失败!"+ex.Message);}finally{if(conn!=null){//关闭数据库连接conn.Close();}}}
删除操作的运行效果如下图所示。
单击删除消息框中的“确定”按钮,'即可刷新 DataGridView 控件中的数据。
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
DataGridView控件怎么在C#项目中使用的详细内容,希望对您有所帮助,信息来源于网络。