【机房重构】余额返还信息查询(DateTimePicker与DataGridView的使用)

    这个窗体还是挺简单的,因为只涉及到查询的操作,但是我觉得有几个地方需要注意,所以写这篇博客希望能够帮助到一些读者。

一 DateTimePicker控件的使用

    这个窗体我们要保证它的初始时间和终止时间在适当的范围内,那么我们可以设定它的初始时间为特定的日期,终止时间最大应为当日。并且保证初始时间不能晚于终止时间,这里,这里只判断他们的Value值就可以进行判断。设定时间的添加代码如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;"> DateBegin.MinDate = New DateTime(2008, 1, 1) '设置最早的时间
        DateBegin.MaxDate = DateTime.Today    '设置最晚的时间是今天

        DateLast.MinDate = New DateTime(2008, 1, 1) '设置最早的时间
        DateLast.MaxDate = DateTime.Today    '设置最晚的时间是今天</span>

二 查询两个日期之间的数据

    这里要查询两个日期之间的数据,但是我封装的实体里面只有一个日期,如果将两个日期的值同时传给一个实体去进行判断显然是不可行的,那么我们可以考虑在实体类里面增加两个实体,比如在这个功能中我增加了BeginDate和LastDate两个实体。将两个日期分别赋值给两个实体,这里需要注意如果赋值给实体的日期格式应该和数据库中日期的显示格式是一样的,如果不一样需要做必要的修改,否则会查询不到信息,我这里就转化了一下。

<span style="font-family:KaiTi_GB2312;font-size:18px;"> Dim Ecancel As New Entity.EntityCancel
        Dim ReturnAmountInquire As New BLL.CancelBLL
        Dim list As New List(Of Entity.EntityCancel)  '实例化一个list泛型
        '将两个时间分别赋值给两个实体
        Ecancel.BeginDate = DateBegin.Value.Date.ToLongDateString   '写成这样是为了保证和数据库中的日期名称显示一致为x年x月x日
        Ecancel.LastDate = DateLast.Value.Date.ToLongDateString
        list = ReturnAmountInquire.ReturnAmoutInquire(Ecancel)</span>
并且注意在D层中的代码

<span style="font-family:KaiTi_GB2312;font-size:18px;"> sql = "select * from Cancel_Info where CancelDate between @BeginDate and @LastDate "</span>

三 DataGridView控件的使用

    添加控件完成后设置表头名称,右击选择编辑列,点击添加,设置名称和页眉文本,即为表头名称。注意设置名称和数据库字段名一致。

【机房重构】余额返还信息查询(DateTimePicker与DataGridView的使用)_第1张图片
如果返回的泛型中存在数据则将相应信息显示到表格中

<span style="font-family:KaiTi_GB2312;font-size:18px;">DGVMessage.AutoGenerateColumns = False     '不允许自动创建列
            Me.DGVMessage.DataSource = list            '显示信息
            Me.DGVMessage.Refresh()</span>

四 总结

    这个功能不算难,但是需要注意控件的使用以及添加表头名称时相应名称要和数据库一致,可能很小的一个疏忽就导致错误,会有信息显示不全。通过这一个小小的功能了解到很多除实现本窗体以外的东西,真的体会到网络的重要性,可以学习到更多。


你可能感兴趣的:(sql,重构,控件,datagridview)