DataGridView与VB中DataGrid控件的功能十分类似,都是用来显示数据库中的数据。下面就我自己的理解,简单说一下DataGridView控件的使用。DataGridView控件绑定DataSet数据集中的数据,可以有两种实现方式:方法一:DataGridView绑定数据源。方法二:代码实现。
方法一:DataGridView绑定数据源:
①添加项目数据源
这时,我们并不希望User_info表中的所有信息全部展现出来。我们只需要把UserID、UserName、Head的信息展现在DataGridView中即可。
完成之后,数据源就绑定了,这时默认在本窗体的加载事件下,会自动生成如下代码:
Private Sub frmDeleteAddUser_Load(sender As Object,e As EventArgs) Handles MyBase.Load 'TODO: 这行代码将数据加载到表“ChargeRe_sysDataSet2.User_info”中。您可以根据需要移动或删除它 Me.User_infoTableAdapter1.Fill(Me.ChargeRe_sysDataSet2.User_info) End Sub这句代码实现了将数据库中的部分信息显示在DataGridView控件中。当然我们也可以修改代码的位置,例如放在一个button按钮的Click事件下面。具体实现方式视情况而定。
②编辑列
添加完数据源之后,DataGridView空间中显示的列名是英文的,这时因为我们数据库中的字段名也是英文的。这样看起来不美观,因此我们需要修改列的HeaderText属性,将其改为我们需要在界面上显示的列名。
①创建连接对象:sqlConnection
②创建适配器对象:sqlDataAdapater
③填充数据集Fill()
④DataGridView控件连接,用DataSource属性
⑤操作认可sqlCommandBuilder,利用该对象能够生成Insert命令、Update命令、Delete命令。Dim builder As New sqlCommandBuilder(已创建的DataAdapter对象)
⑥提交数据Update,保存DateSet(数据集)中的数据,把数据集中修改的数据提交到数据源。
代码实现
Dim conn As New sqlConnection("Data Source=.;Initial Catalog=chargeRe_sys;Integrated Security=true") Dim ds As New DataSet("User_info") Dim da As New sqlDataAdapter("select UserID,UserName,Head from User_info",conn) da.Fill(ds,"User_info") DataGridView1.DataSource = ds.Tables("User_info") '数据提交 Dim builder As New sqlCommandBuilder(da) da.Update(ds,"User_info") '数据刷新 'ds.Tables["User_info"].Clear ds.Tables.Clear() da.Fill(ds,"User_info") DataGridView1.Columns(0).HeaderText = "用户名" DataGridView1.Columns(1).HeaderText = "姓名" DataGridView1.Columns(2).HeaderText = "开户人"总结:两种实现方式各有优缺点,具体优缺点,还是您亲自尝试一下吧,嘻嘻。。。