在向大家详细介绍VB.NET Data Grid之前,首先让大家了解下实现DataGrid2的内容动态更新,然后全面介绍VB.NET Data Grid。
成都创新互联专注于企业全网营销推广、网站重做改版、鄂城网站定制设计、自适应品牌网站建设、html5、成都商城网站开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为鄂城等各大城市提供网站开发制作服务。
VB.NET Data Grid实现主/从数据表
更有效的解决方案是使用两个VB.NET Data Grid控件,主、从表均可见。对主表上某行进行选择,会立即引发从表内容的改变。
建立工程,添加一个Panel控件,将其Dock属性设置为Top;添加一个Splitter控件,Dock属性同样设置为Top;在窗体下部再添加一个 Panel,Dock属性为top.然后,在两面板中各添加一个VB.NET Data Grid,其Dock属性为Fill.
要实现DataGrid2的内容动态更新,需要对DataGrid1的CurrentCellChanged事件进行监听,在接受到DataGrid1的变化消息后,加载相应的数据。
- Imports System.Data.SqlClient
- Public Class Form1
- Const Connection String As String = "integrated security=sspi;initial catalog=pubs;
- data source=(local)"
- Private Sub Button1_Click(By Val sender As Object,
By Val e As System.EventArgs) Handles Button1.Click- Dim cn As New SqlConnection(Connection String)
- cn.Open()
- Dim ds As New Dataset
- Dim GetTitlesString As String = "Select * From Titles"
- Dim Titles Table As New Data Table("Titles")
- ds.Tables.Add(Titles Table)
- Dim da As New SqlDataAdapter(GetTitlesString, cn)
- da.Fill(Titles Table)
- da.Dispose()
- cn.Close()
- DataGrid1.DataSource = Titles Table
- ’主表显示在DataGrid1中
- End Sub
- Private Sub DataGrid1_CurrentCellChanged(By Val sender As Object,
By Val e As System.EventArgs) Handles DataGrid1.CurrentCellChanged- Dim titled As String = DataGrid1.Item(DataGrid1.CurrentCell.RowNumber, 0).To String
- ’判断用户在主表中选择了哪一行,取出它的第0列(在本例中即为title_id列)
- Dim sql As String = "select * from sales where title_id=’" & titled & "’"
- ’SQL命令字符串,选择与主表中相同title_id值的从表数据
- Dim cn As New SqlConnection(Connection String)
- cn.Open()
- Dim ds As New Dataset
- Dim da As New SqlDataAdapter(sql, cn)
- Dim Sales Table As New Data Table("Sales")
- ds.Tables.Add(Sales Table)
- da.Fill(Sales Table)
- ’用选择的从表数据填充,更新
- da.Dispose()
- cn.Close()
- DataGrid2.DataSource = Sales Table
- End Sub
- End Class
运行程序,在主表中选择某行,从表就会显示出匹配的销售信息。
利用主/从数据表模式,能在较小的编程工作量下,实现很好的显示及操作效果。若要建立多表关联的主/从视图,或是进行增、删、改等操作,在此方法上进行改进即可。希望本文能给读者在数据库编程时带来一定的启示和帮助。
【编辑推荐】
当前名称:讲述VB.NETDataGrid实现主/从数据表
文章源于:http://www.mswzjz.cn/qtweb/news26/235276.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能