用daterange对DatagridView进行排序

编程入门 行业动态 更新时间:2024-10-23 22:31:34
本文介绍了用daterange对DatagridView进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

当尝试在gridview中按日期范围对数据表进行排序时,出现以下错误: 字符串未被识别为有效的DateTime." AccessDateFrom和To是日期选择器. 顺便说一句,请帮帮我,我是新手,如果对我来说这是一个简单的错误,对不起. 我的代码: 私有子ReportGen_Click(发送者为System.Object,e为System.EventArgs)处理ReportGen.Click ProjectRef = ProjectRefInput.Text AppNameSelect = ApplicationSelection.Text AccessDateFrom = DateFrom.Text AccessDateTo = DateTo.Text ''从系统中收集数据 用户名= System.Security.Principal.WindowsIdentity.GetCurrent.Name ComputerName = Environment.MachineName AccessTime = Date.Today AppName = My.Application.Info.AssemblyName 试试 使用cnn作为新的OleDbConnection(ConnString) cnn.Open() 使用cmd作为新的OleDbCommand(DbUpdate,cnn) cmd.Parameters.AddWithValue("AccessDate",AccessTime) cmd.Parameters.AddWithValue("UserName",用户名) cmd.Parameters.AddWithValue("ComputerName",ComputerName) cmd.Parameters.AddWithValue("AppName",AppName) cmd.ExecuteNonQuery() 将SelectQuery用作新的OleDbCommand(DbSelect,cnn) SelectQuery.Parameters.AddWithValue("AppName",AppNameSelect) 将结果表昏暗为新的OleDb.OleDbDataAdapter(SelectQuery) 将DataTable变暗为新DataTable("App_Results") ResultsTable.Fill(DataTable) 将DTFilterDate设置为DataView =新DataView(DataTable) DTFilterDate.RowFilter ="AccessDate> =#"&AccessDateFrom&和AccessDate< ="&AccessDateTo&#" ResultsTable.Fill(DataTable) DataGridView1.DataSource = DTFilterDate 最终使用 最终使用 cnn.Close() cnn.Dispose() 最终使用 异常捕获 ''无法找到或更新数据库 错误编号= 2 调用ErrorCodeHandle() 结束尝试 RowCounter = DataGridView1.RowCount TotalRecords.Text = RowCounter 结束Sub

I get the following error when trying to sort my datatable by date range in a gridview: ''String was not recognized as a valid DateTime.'' AccessDateFrom and To are datepickers. Any help please BTW I''m new to this so sorry if its a simple mistake on my part. My code: Private Sub ReportGen_Click(sender As System.Object, e As System.EventArgs) Handles ReportGen.Click ProjectRef = ProjectRefInput.Text AppNameSelect = ApplicationSelection.Text AccessDateFrom = DateFrom.Text AccessDateTo = DateTo.Text ''Collect the data from the system Username = System.Security.Principal.WindowsIdentity.GetCurrent.Name ComputerName = Environment.MachineName AccessTime = Date.Today AppName = My.Application.Info.AssemblyName Try Using cnn As New OleDbConnection(ConnString) cnn.Open() Using cmd As New OleDbCommand(DbUpdate, cnn) cmd.Parameters.AddWithValue("AccessDate", AccessTime) cmd.Parameters.AddWithValue("UserName", Username) cmd.Parameters.AddWithValue("ComputerName", ComputerName) cmd.Parameters.AddWithValue("AppName", AppName) cmd.ExecuteNonQuery() Using SelectQuery As New OleDbCommand(DbSelect, cnn) SelectQuery.Parameters.AddWithValue("AppName", AppNameSelect) Dim ResultsTable As New OleDb.OleDbDataAdapter(SelectQuery) Dim DataTable As New DataTable("App_Results") ResultsTable.Fill(DataTable) Dim DTFilterDate As DataView = New DataView(DataTable) DTFilterDate.RowFilter = "AccessDate >= #" & AccessDateFrom & " and AccessDate <= " & AccessDateTo & "#" ResultsTable.Fill(DataTable) DataGridView1.DataSource = DTFilterDate End Using End Using cnn.Close() cnn.Dispose() End Using Catch ex As Exception ''Unable to find or update the database Err.Number = 2 Call ErrorCodeHandle() End Try RowCounter = DataGridView1.RowCount TotalRecords.Text = RowCounter End Sub

推荐答案

检查AccessDateFrom 和AccessDateTo是否包含适当的日期时间值. 您可以使用DateTime.TryParse [ ^ ]这样做. Check if AccessDateFrom and AccessDateTo contain appropriate date time values. You can use DateTime.TryParse[^] to do so.

更多推荐

用daterange对DatagridView进行排序

本文发布于:2023-10-15 02:46:49,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1493017.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:daterange   DatagridView

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!