private void Btn_query_Click(object sender, EventArgs e) { //从数据库中获取全部人员信息 DatabaseUtility databaseUtility = new DatabaseUtility(); List <CheckinRecord> records = databaseUtility.GetAllRecords(); databaseUtility.CloseConnection(); listView_query_result.BeginUpdate(); //数据更新,UI暂时挂起,直到EndUpdate绘制控件,可以有效避免闪烁并大大提高加载速度 listView_query_result.Items.Clear(); //显示查询结果 foreach (CheckinRecord record in records) { string query_date = tbox_query_date.Text; string record_date = record.CheckinTime.Substring(0, record.CheckinTime.IndexOf("-")); if (query_date != record_date) { continue; } ListViewItem listViewItem = new ListViewItem(); listViewItem.Text = record.staff.Name; listViewItem.SubItems.Add(record.CheckinTime); listViewItem.SubItems.Add(record.staff.DepartmentName); this.listView_query_result.Items.Add(listViewItem); } listView_query_result.EndUpdate(); //结束数据处理,UI界面一次性绘制。 }