xml - 使用 XML 文件作为 DataGridView 的数据源并过滤日期 C# 时如何通过 RowFilter 过滤 DataView?
问题描述
我搜索了很多,但我能找到任何有帮助的东西。
我有一个 XML 文件,我想让它成为我的 DataGridView 的数据源。到现在为止一切都很好。我在 XML 文件中的元素与此类似:
<id>1</id>
<name>First last name</name>
<date>02072019</date>
<incAtt>Yes</incAtt>
Edit1:这是我的数据源:
//Globally defined these two
private DataSet dataSet;
private DataView dv;
//In Form1_Shown
dataSet = new DataSet();
using (var xmlFile = newStreamReader(@"C:\Users\sami_\Desktop\kyc_div_updates.xml", Encoding.GetEncoding("windows-1256")))
{
dataSet.ReadXml(xmlFile);
dv = dataSet.Tables[2].DefaultView;
dv.Sort = "الفرع";
dataGridView1.DataSource = dv;
countL.Text = dataGridView1.Rows.Count + "Item(s)";
SetColumns();
}
我想过滤 datagridviewRowFilter
并且get all elements that their date
是从01012019
到01012020
我尝试了很多方法,我把##放在我的值之间,但我总是得到String was not recognized as a valid DateTime.
我的部分代码是这样的:
"date=#" + dateEnterD.Value.ToString("ddMMyyyy") + "# and "
dateEnterD 是 DateTimePicker
Edit2:这是错误的跟踪:
at System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)
at System.Data.ConstNode..ctor(DataTable table, ValueType type, Object constant, Boolean fParseQuotes)
at System.Data.ConstNode..ctor(DataTable table, ValueType type, Object constant)
at System.Data.ExpressionParser.Parse()
at System.Data.DataExpression..ctor(DataTable table, String expression, Type type)
at System.Data.DataView.set_RowFilter(String value)
at KYCUpdates.Form1.Search_Search(String key) in D:\Visual Studio
2015\Projects\KYCUpdates\KYCUpdates\Form1.cs:line 120
有没有办法在我的情况下搜索两个日期之间的元素?
谢谢
解决方案
推荐阅读
- javascript - 找不到 tsconfig 路径
- docker - 创建 InfluxDB Docker 容器时,如何设置保留策略以存储数据 30 天和 1 天的分片
- html - 使用包含 base64 图像数据的样式声明覆盖图像源?
- php - 是否可以使用 CMS 制作动态 AR 应用程序?
- java - 如何在 Spring 框架和 Jackson 中使用 Java 14 记录
- ubuntu - 每当我使用 wget 时出现证书错误消息
- python-3.x - 向类添加方法以比较 Python 中的对象,但我的代码中不断出现错误
- ajax - 如何通过选择下拉 id 获取 jQuery 自动完成值
- javascript - reactjs - 如何设置边框样式?
- java - 将 LinkedList 的 ArrayList 清空回 Array