private void toolStripLabel3_Click(object sender, EventArgs e) { try { DialogResult queren = MessageBox.Show("读取的'EXCEL文件'后缀必须为.Xlsx,否则读取失败!", "系统提示!", MessageBoxButtons.YesNo); if (queren == DialogResult.Yes) { if (this.openFileDialog1.ShowDialog() == DialogResult.OK) { string path = openFileDialog1.FileName; if (!path.Equals(string.Empty)) { if (!File.Exists(path)) { MessageBox.Show("文件不存在!"); return; } IntPtr vHandle = _lopen(path, OF_READWRITE | OF_SHARE_DENY_NONE); if (vHandle == HFILE_ERROR) { MessageBox.Show("文件被占用!"); return; } CloseHandle(vHandle); if (path.Trim().Contains("xlsx")) { List <DanHao> list = cal.Readerdh(path); this.backgroundWorker1.RunWorkerAsync(); // 运行 backgroundWorker 组件 JingDu form = new JingDu(this.backgroundWorker1, "读取中"); // 显示进度条窗体 form.ShowDialog(this); form.Close(); DataTable dt1 = new DataTable(); dt1.Columns.Add("Id", typeof(int)); DataTable dt2 = new DataTable(); dt2.Columns.Add("Id", typeof(int)); txt_STYLE.Text = list[0].Style; dateTimePicker1.Text = list[0].DATE; txt_mfcf.Text = list[0].FABRIC_CONTENT; txt_JGC.Text = list[0].JiaGongChang; this.comboBox1.DropDownStyle = ComboBoxStyle.DropDown; this.comboBox1.Text = list[0].CaiDanNo; for (int i = 0; i < dataGridView1.Columns.Count; i++) { if (!dataGridView1.Columns[i].HeaderCell.Value.ToString().Equals("Id")) { dt1.Columns.Add(dataGridView1.Columns[i].HeaderCell.Value.ToString(), typeof(String)); dt2.Columns.Add(dataGridView1.Columns[i].HeaderCell.Value.ToString(), typeof(String)); } } foreach (DanHao s in list) { if (s.Type != null) { if (!s.Name.Contains("金额") && !s.Name.Equals("面料") && !s.Name.Contains("辅料") && !s.Name.Equals(string.Empty)) { if (s.Type.Equals("面料")) { dt1.Rows.Add(s.Id, s.CaiDanNo, s.Style, s.FABRIC_CONTENT, s.DATE, s.JiaGongChang, s.Name, s.HuoHao, s.GuiGe, s.Yanse, s.Danjia, s.DanHao1, s.Jine, s.BeiZhu, s.ChangShang, s.Type); } else { dt2.Rows.Add(s.Id, s.CaiDanNo, s.Style, s.FABRIC_CONTENT, s.DATE, s.JiaGongChang, s.Name, s.HuoHao, s.GuiGe, s.Yanse, s.Danjia, s.DanHao1, s.Jine, s.BeiZhu, s.ChangShang, s.Type); } } } } dataGridView1.DataSource = dt1; dataGridView2.DataSource = dt2; Jisuan(); } else { MessageBox.Show("读取失败!原因:读取文件后缀非'xlsx'"); } } } } } catch (Exception ex) { //throw ex; MessageBox.Show(ex.Message); } }