使用 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();
}

我想通过 RowFilter 过滤 datagridview,get all elements that their date 是从 0101201901012020

我尝试了很多方法,我把##放在我的价值观之间,但我总是得到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,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

在我的情况下,有没有办法可以在两个日期之间搜索元素?

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...