dataview的使用

  前言:dataview表示排序,筛选,搜索,编辑和导航datatable的可绑定数据的自定义视图。

dataview是一张datatable的虚拟视图,用来显示数据,允许绑定到windows和web的控件上。

dataset表示数据库,是多个表datatable的集合,table就是数据库中的表,而dataview则是对应数据库中的的视图view.

 

 

 

 

1.等待调用的 存储语句:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER proc [dbo].[ddxx]
as
select * from 客户 left  JOIN 定单统计 on 客户.id=定单统计.客户id

2. 字段定义:
    Public tblinfo As DataTable = New DataTable()
    Public dataview1 As DataView = New DataView()
    Public dataview2 As DataView = New DataView()
    Public dataview3 As DataView = New DataView()
    Dim ds As New DataSet

打开数据库函数
    Public Sub dakai()
        Data()
        Dim scd As SqlDataAdapter = New SqlDataAdapter("ddxx", cn) ‘调用存储
        scd.SelectCommand.CommandType = CommandType.StoredProcedure
        Dim ds As New DataSet()
        scd.Fill(ds, "客户")
        cbkf.DataSource = ds.Tables("客户")
        cbkf.DisplayMember = "客户"

        dataview1 = ds.Tables(0).DefaultView
        kfmc.AutoGenerateColumns = False
        kfmc.DataSource = dataview1
        kfmc.RowHeadersVisible = False
        kfmc.ReadOnly = True
        kfmc.Columns.Item(0).SortMode = DataGridViewColumnSortMode.NotSortable
        ds.Dispose()
        cn.Close()
        kh.Text = ""
        kf.Text = ""
        hth.Text = ""
        bdh.Text = ""
        sl.Text = ""

        psy.Text = ""
        time.Text = Date.Now()
        '初始化订单信息,储存在虚拟视图中

        Dim strSql As String = "select * from 定单信息"
        Dim da As SqlDataAdapter = New SqlDataAdapter()
        ds = sqldaad(strSql, "定单信息")
        dataview2 = ds.Tables(0).DefaultView

    End Sub
    Private Sub kfmc_RowEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles kfmc.RowEnter
        If e.RowIndex >= 0 And e.RowIndex < kfmc.RowCount - 1 Then
            str = kfmc.Item(0, e.RowIndex).Value
            dataview2.RowFilter = "客户id=" + str           '过滤作用
            ddhth.RowHeadersVisible = False
            ddhth.AutoGenerateColumns = False
            ddhth.DataSource = dataview2
            txtkfmz.Text = banjiao(kfmc.Item(1, e.RowIndex).Value)
            cbgjdq.Text = banjiao(kfmc.Item(3, e.RowIndex).Value)

        End If
    End Sub

    Private Sub 合同号编辑_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Me.MdiParent = mainfrm
        Button1.Enabled = False
        temp = ""
        DataGridView3.RowHeadersVisible = False
        cbzl.SelectedIndex = 0
        dakai() '首先显示客户名称列表
        ddhth.ReadOnly = True
    End Sub
    Sub cxhth(ByVal strcx)
        Dim strSql As String = "select * from 定单信息 where 合同号 like '%" + strcx + "%'"
        Dim da As SqlDataAdapter = New SqlDataAdapter()
        ds = sqldaad(strSql, "定单信息")
        dataview3 = ds.Tables(0).DefaultView
        ddhth.DataSource = dataview3
        ddhth.RowHeadersVisible = False
        ddhth.AutoGenerateColumns = False
    End Sub

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值