vb.net版机房重构--DataGridView控件

来源:互联网 发布:果蝇优化算法 编辑:程序博客网 时间:2024/05/21 07:51

前言

       DataGridView也是机房重构时经常使用的一个控件,可以说是每次接触它都有不同的收获,很棒!

绑定数据

       在第一次机房中使用相关的控件会发现比较麻烦,我们需要自己去设计相应的表格,然后将数据库中的数据显示在表格中,DataGridView的出现帮助我们减少了重复的工作。具体绑定工作请点击:vb.net版机房重构–充值记录查询

删除表中的数据

       既然需要用表格来显示数据,那么势必就会要删除数据,度娘上搜索一下发现删除数据的方法有很多,但是很多都会报错,但是下面这个方法还不错,很简单,大家可以试试!

While (DataGridView1.RowCount > 0)                DataGridView1.Rows.Remove(DataGridView1.Rows(0))            End While

问题

       然后就是在使用的过程中遇到的一些小问题了。
(1)窗体加载的时候数据就一起出来了
刚开始遇到这个问题很是吃惊,为什么我没有输入筛选条件,自己就出来数据了呢,后来分析之后才知道原来在查询数据进行测试时输入了相应的数据,控件自己就默认它了,于是对代码做了如下修改:

'TODO: 这行代码将数据加载到表“Rechargerecord.recharge”中。您可以根据需要移动或删除它。        Me.RechargeTableAdapter.Fill(Me.Rechargerecord.recharge)

      我们知道以上代码是控件完成设计时系统自动在Load窗体中生成的,正是因为有它所以数据才会自己跑出来,所以把它删除即可,可见,系统自己生成的东西也未必适合我们,很多东西还是需要我们自己去探索。
(2)根据相应的学号去筛选数据并根据结果弹出框提示
   a.对于筛选数据这里,我用到的就是登陆窗体的判断用户(卡号)是否存在,各个层的写法也和登陆窗体大同小异,这里就不做赘述了
    b.我们知道有时候一些程序点击之后会一直不响应,有时候是在处理数据,有时候确实已经进入死循环,无法继续执行了,为了让用户更准确地知道我们程序发生了什么,一些弹出框是必不可少的。其实这里一个简单的if语句就结局了!

If strUser = True Then            Try                Me.LoginUserTableAdapter.FillBy(Me.CheckOnlinerecord.LoginUser, CType(UserIDToolStripTextBox.Text, Integer))            Catch ex As System.Exception                System.Windows.Forms.MessageBox.Show(ex.Message)            End Try        Else            MsgBox("该学号不存在,请重新输入!")            txtUserID.Text = ""            txtUserID.Focus()            '清除表中的数据            While (DataGridView1.RowCount > 0)                DataGridView1.Rows.Remove(DataGridView1.Rows(0))            End While        End If

结语

       对DataGridView控件控件的理解到目前为止就是这些,相信在之后也会遇到不同的问题和解决方案,小编会在不断学习的过程中不断更新,如果不同理解,还望指出,共同学习!