private void btnClick_Click(object sender, EventArgs e) { if (btnClick.Text == "查詢") { StardRun_View(); this.btnClick.Text = "停止"; DateTime startTime = Convert.ToDateTime(this.dateTimePicker1.Value.ToString("yyyy-MM-dd") + " 00:00:00"); DateTime endTime = Convert.ToDateTime(this.dateTimePicker1.Value.AddDays(1).ToString("yyyy-MM-dd") + " 00:00:00"); var _IED = (dynamic)this.cbxFeeder.SelectedItem; Task.Run(() => { tDemandSub1by1Hour mDemand = new tDemandSub1by1Hour(EditXml.strConnectionHistory); var data = mDemand.GetDataByHour((int)_IED.Value, startTime, endTime); for (int i = 0; i < 24; i++) { string[] str = new string[] { (i + 1).ToString(), startTime.ToString("yyyy-MM-dd"), string.Format(" {0:00}:00:00", i), (string)_IED.Key , data[i].Ipr.ToString(), data[i].Ips.ToString(), data[i].Ipt.ToString(), data[i].Ipn.ToString(), data[i].kWh.ToString() }; Invoke(new Action(() => { dataGridView1.Rows.Add(str); })); } }); EndRun_View(); } else { this.btnClick.Text = "查詢"; EndRun_View(); } }