C#如何将Access中以时间段条件查询的数据添加到ListView中
一、让ListView控件显示表头的方法
在窗体中添加ListView空间,其属性中设置:View属性设置为:Detail,Columns集合中添加表头中的文字。
二、利用代码给ListView添加Item。
首先,ListView的Item属性包括Items和SubItems。必须先实例化一个ListIteView对象。具体如下:
ListViewItemlistViewItem=newListViewItem();
listViewItem.SubItems[0].Text=""11111;//第一行第一例的值
listViewItem.SubItems.Add("222");///
listViewItem.SubItems.Add("222");///以此类推
ListView1.Items.Add(listViewItem);
三、Access中时间段查询的SQL语句书写规范(采用dateTimePick控件)
注意:# 是必须要加的
stringsql=select*fromtableNamewheretimeFieldbetween#"+dateTimePick1.value.ToString()+"#and#"+dateTimePick2.vlaue.ToString()+"#";
四、连接数据库,按条件查询数据并显示在ListView中
stringpath=System.Environment.CurrentDirectory+"\\database.mdb";
OleDbConnectioncon=newOleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;DataSource="+path);//station2.mdb
con.Open();
stringsql="select*fromSendRecordwhereSENDTIMEbetween#"+dateTimePicker1.Value.ToString()+"#and#"+dateTimePicker2.Value.ToString()+"#";
//stringsql="select*fromSendRecord";
OleDbDataAdapterda=newOleDbDataAdapter(sql,con);
DataSetdt=newDataSet();
da.Fill(dt);
DataTabledtb=dt.Tables[0];
foreach(DataRowrowindtb.Rows)
{
ListViewItemlistviewItem=newListViewItem();
listviewItem.SubItems.Clear();
listviewItem.SubItems[0].Text=string.Format("{0:yyyy-MM-ddHH:mm}",row["SENDTIME"]);
listviewItem.SubItems.Add((string)row["SENDER"]);
listviewItem.SubItems.Add((string)row["CONTENT"]);
listviewItem.SubItems.Add(string.Format("{0}",row["AUDITOR"]));
listviewItem.SubItems.Add(string.Format("{0:yyyy-MM-ddHH:mm}",row["AUDITTIME"]));
listviewItem.SubItems.Add(string.Format("{0}",row["AUDITSTATUS"]));
listView1.Items.Add(listviewItem);
}
con.Close();
}