DataGridView显示数据

    使用 DataGridView控件,可以显示和编辑来自多种不同类型的数据源的表格数据。

    到此,我用到了以下不同的两种方法。个人感觉,方法一:适合对三层以及代码熟悉度高的程序员;方法二:则更为适合我们现在初步接触三层,正在学习的未来程序员。当然了,这两种方法都是要会的,不同的阶段或者情景选择不同的方法,才是最合适的。

    方法一:DataGridView绑定数据源

         1.---添加项目数据源

                       DataGridView显示数据_第1张图片

 

                       DataGridView显示数据_第2张图片

 

                       DataGridView显示数据_第3张图片

 

                       DataGridView显示数据_第4张图片

 

                       DataGridView显示数据_第5张图片

 

        完成之后,数据源就绑定好了。这时,默认在本窗体的加载事件下,会自动生成以下这段代码:

Private SubfrmQueryRechargeMoney_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
        'TODO: 这行代码将数据加载到表“Charge_PersonalDataSet2.T_OnPCRecord”中。您可以根据需要移动或删除它。
       Me.T_OnPCRecordTableAdapter.Fill(Me.Charge_PersonalDataSet2.T_OnPCRecord)
 
    End Sub

        这段代码就实现了将数据源--也就是我们数据库表中的全部信息显示在datagridview中。当然了,我们也可以修改这句代码的位置,例如把它放在一个buttonclick事件下。这都要视情况而定了。

           2.---编辑列

        一般情况下,添加完数据源之后,datagridview控件中显示的列名都是英文的,即你数据库中的字段名(一般我们的数据库中字段名都是英文的),所以,需要我们在“编辑列”中修改列的HeaderText属性,将其改为我们需要在界面上显示的列名。

 

                        DataGridView显示数据_第6张图片

 

            3.---添加查询

        大部分情况下,我们是在一定的条件下进行查询的,而以上步骤实现的全部查询,所以,在此,我们需要添加一定的查询条件,也就是sql语句。例如下图:   

 

                      DataGridView显示数据_第7张图片

 

        在确定“添加”后,窗体上会出现FillBy1ToolStripButton的控件供我们查询:

                    DataGridView显示数据_第8张图片

 

       此时,FillBy1ToolStripButtonclick事件下,也会自动生成以下代码:


DataGridView显示数据_第9张图片

   

       图中标记部分,都是可以随我们修改的,我们可以不用它自动为我们生成的ToolStripButton,而换成我们自己的输入卡号的文本框和“查询”按钮。

       至此,利用datagridview绑定数据源并且显示数据就可以完美实现了。

    方法二:代码实现

       这里只展示U层的代码,因为关于datagridview的代码只在U层出现。

 '查询收取金额记录
        strStartTime = dtpStartTime.Text
        strEndTime = dtpEndTime.Text
        dtQueryReturnMoney = bQueryReturnMoney.bQueryRemoveMoney(strStartTime, strEndTime)
        If dtQueryReturnMoney.Rows.Count = 0 Then
            MsgBox("该时间段暂无收取金额记录!", vbOKOnly, "提示信息")
            Exit Sub
        Else
            '设置datagridview控件绑定的数据源
            dgvReturnMoney.DataSource = dtQueryReturnMoney
            '将datagridview的标题改为中文
            dgvReturnMoney.Columns(0).HeaderText = "卡号"
            dgvReturnMoney.Columns(1).HeaderText = "退还金额"
            dgvReturnMoney.Columns(2).HeaderText = "退还时间"
            dgvReturnMoney.Columns(3).HeaderText = "结账教师"
            dgvReturnMoney.Columns(4).HeaderText = "结账状态"
            'datagridview列对应datatable中的列
            dgvReturnMoney.Columns(0).DataPropertyName = dtQueryReturnMoney.Columns(0).ColumnName
            dgvReturnMoney.Columns(1).DataPropertyName = dtQueryReturnMoney.Columns(1).ColumnName
            dgvReturnMoney.Columns(2).DataPropertyName = dtQueryReturnMoney.Columns(2).ColumnName
            dgvReturnMoney.Columns(3).DataPropertyName = dtQueryReturnMoney.Columns(3).ColumnName
            dgvReturnMoney.Columns(4).DataPropertyName = dtQueryReturnMoney.Columns(4).ColumnName

       这些代码,也为我们实现了datagridview中实现数据的要求。也许读者会有疑问了,按照我们上述所写,不应该是方法二更为简单吗?其实不然,在方法为中,由于展示要求,我只贴出了U层的代码,B层和D层的代码都还是需要我们手动敲写的,就和我们平时三层之间的更删改是一样的。而方法一,你只需要按照上述步骤完成即可,其他层完全不需要代码。

        至于方法一会不会违背三层呢,我现在也正在考虑,期待您的交流指导~



你可能感兴趣的:(三层架构,数据库)