//双击卡片修改预约 private void bt_Click(object sender, EventArgs e) { DoubleClickButton ct = (DoubleClickButton)sender; int ID = -1; if (ct.Name != string.Empty) { ID = int.Parse(ct.Name); } if (ID > -1) { frmBookNew fb = new frmBookNew(ID, false); if (fb.ShowDialog() == DialogResult.OK) { 刷新ToolStripMenuItem_Click(null, null); } } }
private void ChangeWidth() { //int rowindex,int colindex, DoubleClickButton bt //int m = 0; //foreach (Control ct in dataGridView1.Controls) //{ //当一个单元格有多个卡片时,调整卡片宽度 // if (ct.AccessibleDescription == bt.AccessibleDescription && ct.Top == bt.Top && ct.Name != bt.Name) // { // m++; // ct.Width = dataGridView1.Columns[2].Width / Cards[rowindex, colindex]; // bt.Width = dataGridView1.Columns[2].Width / Cards[rowindex, colindex]; // if (m == 2) // { // ct.Left = ct.Left - dataGridView1.Columns[2].Width / 6; // } // bt.Left = ct.Left + ct.Width; // } //} for (int i = 0; i < dataGridView1.Rows.Count; i++) { for (int j = 0; j < 23; j++) { if (Cards[i, j] > 1) { int m = 0; foreach (Control ct in dataGridView1.Controls) { if (ct.AccessibleDescription != null) { DoubleClickButton dcb = (DoubleClickButton)ct; if (dcb.TabIndex == i && ct.AccessibleDescription == j.ToString()) { int left = dataGridView1.Columns[0].Width + dataGridView1.Columns[1].Width + dataGridView1.Columns[2].Width * j; ct.Width = ct.Width / Cards[i, j]; ct.Left = left + m * ct.Width; m++; } } } } } } }
private void fb_UpdateCardHandle(string ID, DateTime booktime, string detail) { //如果修改之后的日期不是当天,则删除卡片 if (DateTime.Parse(label1.Text).ToString("yyyy-MM-dd") != booktime.ToString("yyyy-MM-dd")) { foreach (Control ct in dataGridView1.Controls) { if (ct.Name == ID) { dataGridView1.Controls.Remove(ct); } } } else { UpdateDetail = detail; ToolTip tt = new ToolTip(); DoubleClickButton bt = (DoubleClickButton)CureentCt; tt.SetToolTip(bt, detail); } }
private void 返修ToolStripMenuItem_Click(object sender, EventArgs e) { if (CureentCt != null) { int recordid = int.Parse(CureentCt.Name); DoubleClickButton bt = (DoubleClickButton)CureentCt; string[] strs = bt.ImageKey.Split(new Char[] { ',' }); if (strs.Length > 1) { if (strs[1] == "完工" || strs[1] == "洗车") { frmAddHourReser fdt = new frmAddHourReser(recordid); if (fdt.ShowDialog() == DialogResult.OK) { 刷新ToolStripMenuItem_Click(null, null); } } else { MessageBox.Show("只能在“完工”和“洗车”状态才能返修!"); } } } }
//添加车辆预约卡片 private void AddCarCard(DataRow dr) { DateTime booktime = DateTime.Parse(dr["BookTime"].ToString()); string recordid = dr["ID"].ToString(); string state = dr["State"].ToString(); StringBuilder sb = new StringBuilder(); sb.AppendLine("车 牌:" + dr["CarNo"].ToString()); sb.AppendLine("车 型:" + dr["CarType"].ToString()); sb.AppendLine("维修类型:" + dr["ServiceType"].ToString()); sb.AppendLine("维修项目:" + dr["ServiceItem"].ToString()); sb.AppendLine("状 态:" + dr["State"].ToString()); string carnotype = dr["CarNo"].ToString().Trim() + dr["ServiceType"].ToString().Trim(); if (!CmbCars.Items.Contains(carnotype)) { CmbCars.Items.Add(carnotype); } else { //MessageBox.Show(dr["CarNo"].ToString().Trim() + dr["ServiceType"].ToString().Trim()); return; } if (DateTime.Parse(labDateTime.Text).ToString("yyyy-MM-dd") != booktime.ToString("yyyy-MM-dd")) { return; } DoubleClickButton bt = new DoubleClickButton(); CheckRowindex(booktime); bt.Tag = state; bt.ImageKey = sb.ToString(); if (state == "失约") { bt.BackColor = Color.Red; } else if (state == "取消") { bt.BackColor = Color.Gray; } else if (state == "预约") { bt.BackColor = Color.Yellow; } else { bt.BackColor = Color.Blue; bt.ForeColor = Color.White; } bt.Name = recordid; bt.Width = sizewidth + 5; bt.Height = dataGridView1.Rows[0].Height; int tempcol = 1; if (dr["ServiceType"].ToString() == "车身维修") { tempcol = 2; } int left = 0; int top = Rowindex * dataGridView1.Rows[0].Height + dataGridView1.ColumnHeadersHeight; for (int i = 0; i < tempcol; i++) { left += dataGridView1.Columns[i].Width; } bt.Top = top; bt.Left = left + Cards[Rowindex, tempcol] * bt.Width; //已经存在cards的数量 bt.TextAlign = ContentAlignment.MiddleLeft; string remindstr = string.Empty; if (dr["IsRemind"].ToString().ToLower() == "true") { if (dr["IsRemindSuc"].ToString().ToLower() == "true") { remindstr = " √"; //×√ } else { remindstr = " ×"; } } string Sa = dr["PreSA"].ToString(); if (bt.BackColor == Color.Blue) { Sa = dr["Receiver"].ToString(); } string bookstr = "自"; if (Convert.ToBoolean(dr["IsBook"].ToString())) { bookstr = "预"; } if (dr["DelayBook"] != null && dr["DelayBook"].ToString().IndexOf("迟到") > -1) { bookstr = "迟"; } bt.Text = Sa + "/" + dr["LinkMan"].ToString() + "\n" + dr["CarNo"].ToString() + " " + bookstr + remindstr; bt.ContextMenuStrip = contextMenuStrip1; ToolTip tt = new ToolTip(); tt.SetToolTip(bt, sb.ToString()); bt.MouseDown += new MouseEventHandler(bt_MouseDown); bt.MouseMove += new MouseEventHandler(bt_MouseMove); bt.MouseUp += new MouseEventHandler(bt_MouseUp); bt.DoubleClick += new EventHandler(bt_Click); dataGridView1.Controls.Add(bt); Cards[Rowindex, tempcol] = Cards[Rowindex, tempcol] + 1; dataGridView1.ClearSelection(); }
//添加车辆预约卡片 private void AddCarCard(DataRow dr) { DateTime booktime = DateTime.Parse(dr["BookTime"].ToString()); string recordid = dr["ID"].ToString(); string state = dr["State"].ToString(); StringBuilder sb = new StringBuilder(); sb.AppendLine("车 牌:" + dr["CarNo"].ToString()); sb.AppendLine("车 型:" + dr["CarType"].ToString()); sb.AppendLine("维修类型:" + dr["ServiceType"].ToString()); sb.AppendLine("维修项目:" + dr["ServiceItem"].ToString()); sb.AppendLine("零件准备:" + dr["PreParts"].ToString()); if (DateTime.Parse(label1.Text).ToString("yyyy-MM-dd") != booktime.ToString("yyyy-MM-dd")) { return; } DoubleClickButton bt = new DoubleClickButton(); CheckRowindex(booktime); bt.Tag = state; bt.ImageKey = sb.ToString(); if (state == "失约") { bt.BackColor = Color.Red; } else if (state == "取消") { bt.BackColor = Color.Gray; } else if (state == "预约") { bt.BackColor = Color.Yellow; } else { bt.BackColor = Color.Blue; bt.ForeColor = Color.White; } bt.Name = recordid; bt.Width = sizewidth + 5; bt.Height = dataGridView1.Rows[0].Height; int tempcol = 1; if (dr["ServiceType"].ToString() == "车身维修") { tempcol = 2; } int left = 0; int top = Rowindex * dataGridView1.Rows[0].Height + dataGridView1.ColumnHeadersHeight; for (int i = 0; i < tempcol; i++) { left += dataGridView1.Columns[i].Width; } bt.Top = top; bt.Left = left + Cards[Rowindex, tempcol] * bt.Width; //已经存在cards的数量 bt.TextAlign = ContentAlignment.MiddleLeft; string Sa = dr["PreSA"].ToString(); if (bt.BackColor == Color.Blue) { Sa = dr["Receiver"].ToString(); } string bookstr = string.Empty; if (dr["PreParts"].ToString() == "零件已备") { bookstr = "备"; } bt.Text = Sa + "/" + dr["LinkMan"].ToString() + "\n" + dr["CarNo"].ToString() + " " + bookstr; ToolTip tt = new ToolTip(); tt.SetToolTip(bt, sb.ToString()); bt.DoubleClick += new EventHandler(bt_Click); dataGridView1.Controls.Add(bt); Cards[Rowindex, tempcol] = Cards[Rowindex, tempcol] + 1; dataGridView1.ClearSelection(); }
//添加车辆预约卡片 private void AddCarCard(string ID, string info) { DoubleClickButton bt = new DoubleClickButton(); string[] strs = info.Split(new Char[] { ',' }); bt.Height = dataGridView1.RowTemplate.Height; bt.Width = dataGridView1.Columns[0].Width - 10; bt.Tag = strs[2]; bt.Name = ID; bt.ImageKey = info; int left = 0; int top = Cards[Colindex] * dataGridView1.RowTemplate.Height + dataGridView1.ColumnHeadersHeight; for (int i = 0; i < Colindex; i++) { left += dataGridView1.Columns[i].Width; } foreach (Control ct in dataGridView1.Controls) { //同车牌 并且状态相同,在此界面只显示一次 if (ct.Tag != null) { if (ct.Tag.ToString() == bt.Tag.ToString() && ct.Name != bt.Name) { DoubleClickButton cbt = (DoubleClickButton)((Control)ct); string[] tempstrs = cbt.ImageKey.Split(new Char[] { ',' }); if (tempstrs[1] == strs[1]) { return; } } } } bt.ContextMenuStrip = contextMenuStrip2; dataGridView1.Controls.Add(bt); bt.Top = top; bt.Left = left + 5; //+ 50; //已经存在cards的数量 Color cl = Color.PowderBlue; if (Colindex == 0) { cl = Color.Yellow; bt.MouseWheel += new MouseEventHandler(bt_MouseWheel); } if (Colindex == 1) { cl = Color.Green; if (strs[10].IndexOf("返修") > -1) { cl = Color.MediumSeaGreen; } if (strs[10].IndexOf("追加项目") > -1) { cl = Color.OliveDrab; } } if (Colindex == 2) { cl = Color.LightGray; } if (Colindex == 3) { cl = Color.Blue; } if (Colindex == 4) { cl = Color.Orange; if (strs[4] == string.Empty) { cl = Color.MediumOrchid; } } if (Colindex == 1) { if (DateTime.Parse(DateTime.Today.Year.ToString() + "-" + strs[4]).CompareTo(DateTime.Today) < 0) { cl = Color.Wheat; } } bt.BackColor = cl; bt.Paint += new PaintEventHandler(bt_Paint); bt.DoubleClick += new EventHandler(bt_DoubleClick); bt.MouseEnter += new EventHandler(bt_MouseEnter); Cards[Colindex] = Cards[Colindex] + 1; }
private void wbt_MouseUp(object sender, MouseEventArgs e) { if (!ClsBLL.IsPower("派工")) { MessageBox.Show("你没有权限派工!"); ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } if (IsMove) { decimal top = decimal.Parse(Convert.ToString(((Control)sender).Top - dataGridView1.ColumnHeadersHeight)); decimal height = decimal.Parse(dataGridView1.Rows[0].Height.ToString()); Rowindex = int.Parse(decimal.Round(top / height, 0).ToString()); int left = ((Control)sender).Left; int startleft = dataGridView1.Columns[0].Width + dataGridView1.Columns[1].Width; Colindex = (left - startleft) / dataGridView1.Columns[2].Width; Colindex = Colindex + 2; if (top == 0 || left < dataGridView1.Columns[0].Width) { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } if (Rowindex == -1) { Rowindex = 0; } ((Control)sender).Top = Rowindex * dataGridView1.Rows[0].Height + dataGridView1.ColumnHeadersHeight; ((Control)sender).Left = (Colindex - 2) * dataGridView1.Columns[2].Width + startleft; try { if (Rowindex > -1) { if (((Control)sender).Name != string.Empty) { string sqlstring = string.Empty; DoubleClickButton bt = (DoubleClickButton)((Control)sender); //记录ID int recordid = int.Parse(bt.Name); string[] strinfo = bt.ImageKey.Split(new Char[] { ',' }); if (strinfo[1] == "延时到明天") { //延时到明天的单,第二天派工时确认追加工时,预计完成时间是当前时间加上追加工时 if (ClsBLL.GetFendanNum(recordid) > 1) { //如果有两张同时延时到明天的单,则进入分单界面。 frmServiceItem fsi = new frmServiceItem(recordid); if (fsi.ShowDialog() == DialogResult.OK) { 刷新ToolStripMenuItem_Click(null, null); } else { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } } else { frmAddHour2Day frmaddhour = new frmAddHour2Day(recordid); if (frmaddhour.ShowDialog() == DialogResult.OK) { ClsBLL.AddMsg(recordid, "车牌号码:" + strinfo[2] + ",派工给" + ClsBLL.GetWorker(recordid)); 刷新ToolStripMenuItem_Click(null, null); } else { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } } } else { //维修工时 decimal servicehours = ClsBLL.GetServiceHour(recordid); //维修工人 string serviceworker = dataGridView1.Rows[Rowindex].Cells[1].Value.ToString(); DateTime DtPlanComplete = DateTime.Now.AddMinutes(double.Parse(Convert.ToString(servicehours * 60))); sqlstring = "Update Booking Set AssignTime='" + DateTime.Now.ToString("yyyy-MM-dd HH:mm") + "', StartServiceTime='" + DateTime.Now.ToString("yyyy-MM-dd HH:mm") + "',PlanCompleteTime='" + DtPlanComplete + "', Worker='" + serviceworker + "',State='维修进行中' where ID=" + recordid; if (SQLDbHelper.ExecuteSql(sqlstring) > 0) { ClsBLL.AddMsg(recordid, "车牌号码:" + strinfo[2] + ",派工给" + serviceworker); ClsBLL.ServicePauseStart(recordid); 刷新ToolStripMenuItem_Click(null, null); } } } } } catch (Exception Err) { MessageBox.Show(Err.Message); } } IsMove = false; }
private void wbt_Paint(object sender, PaintEventArgs e) { DoubleClickButton bt = (DoubleClickButton)((Control)sender); if (bt.Tag != null) { if (txtCarNo.Text != string.Empty) { if (bt.Tag.ToString().ToLower().EndsWith(txtCarNo.Text.ToLower()) && bt.Left == 1) { int borderWidth = 3; Color borderColor = Color.Red; ControlPaint.DrawBorder(e.Graphics, e.ClipRectangle, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid); } else if (bt.Left == 1) { int borderWidth = 3; Color borderColor = Color.Transparent; ControlPaint.DrawBorder(e.Graphics, e.ClipRectangle, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid, borderColor, borderWidth, ButtonBorderStyle.Solid); } } } string info = bt.ImageKey; string[] Strs = info.Split(new Char[] { ',' }); Font ft1 = new Font("宋体", 11, FontStyle.Regular); Font ft2 = new Font("宋体", 10, FontStyle.Regular); StringFormat sf = new StringFormat(StringFormat.GenericTypographic); SizeF size = e.Graphics.MeasureString(Strs[2], ft1, 1000, sf); int xpoint = int.Parse(Convert.ToString(Math.Floor(bt.Width * 0.5))); int ypoint = int.Parse(Convert.ToString(Math.Floor(bt.Height * 0.5))); string isbook = "自"; if (Convert.ToBoolean(Strs[7])) { isbook = "预"; } if (Strs[9].IndexOf("迟到") > -1) { isbook = "迟"; } e.Graphics.DrawString(Strs[2] + " " + isbook, ft1, Brushes.Black, 10, 5); //车牌 e.Graphics.DrawString("进场时间:" + DateTime.Parse(Strs[5]).ToString("MM-dd HH:mm"), ft2, Brushes.Black, 5, size.Height + 5); //时间差 if (Strs[1] == "延时到明天") { string delayreason = ClsBLL.DelayReason(int.Parse(bt.Name)); e.Graphics.DrawString("中断:" + delayreason, ft2, Brushes.Black, 5, size.Height + 20); //维修类型 } else { if (Strs[6] != string.Empty) { e.Graphics.DrawString("计划完成:" + DateTime.Parse(Strs[6]).ToString("MM-dd HH:mm"), ft2, Brushes.Black, 5, size.Height + 20); //时间差 } } }
private void bt_MouseDown(object sender, MouseEventArgs e) { mouse_offset = new Point(-e.X, -e.Y); PcStartTop = ((Control)sender).Top; PcStartLeft = ((Control)sender).Left; DoubleClickButton bt = (DoubleClickButton)((Control)sender); 中断ToolStripMenuItem.Enabled = true; 洗车ToolStripMenuItem.Enabled = true; 完工ToolStripMenuItem.Enabled = true; 延时ToolStripMenuItem.Enabled = true; 返修ToolStripMenuItem.Enabled = true; 追加工时ToolStripMenuItem.Enabled = true; 洗车与送车时间ToolStripMenuItem.Enabled = true; 分单ToolStripMenuItem.Enabled = true; if (bt.Tag.ToString() == "维修进行中") { 返修ToolStripMenuItem.Enabled = false; 洗车ToolStripMenuItem.Enabled = false; 洗车与送车时间ToolStripMenuItem.Enabled = false; 中断ToolStripMenuItem.Text = "中断"; } if (bt.Tag.ToString() == "中断") { 返修ToolStripMenuItem.Enabled = false; 中断ToolStripMenuItem.Text = "继续"; 洗车ToolStripMenuItem.Enabled = false; 洗车与送车时间ToolStripMenuItem.Enabled = false; } if (bt.Tag.ToString() == "完工") { 中断ToolStripMenuItem.Enabled = false; 完工ToolStripMenuItem.Enabled = false; 延时ToolStripMenuItem.Enabled = false; 追加工时ToolStripMenuItem.Enabled = false; 分单ToolStripMenuItem.Enabled = false; } if (bt.Tag.ToString() == "洗车") { 返修ToolStripMenuItem.Enabled = false; 中断ToolStripMenuItem.Enabled = false; 完工ToolStripMenuItem.Enabled = false; 延时ToolStripMenuItem.Enabled = false; 洗车ToolStripMenuItem.Enabled = false; 追加工时ToolStripMenuItem.Enabled = false; 分单ToolStripMenuItem.Enabled = false; } if (bt.Tag.ToString() == "延时到明天") { 返修ToolStripMenuItem.Enabled = false; 中断ToolStripMenuItem.Enabled = false; 洗车ToolStripMenuItem.Enabled = false; 洗车与送车时间ToolStripMenuItem.Enabled = false; 分单ToolStripMenuItem.Enabled = false; 追加工时ToolStripMenuItem.Enabled = false; 延时ToolStripMenuItem.Enabled = false; } if (bt.Tag.ToString() == "过时") { 洗车ToolStripMenuItem.Enabled = false; 返修ToolStripMenuItem.Enabled = false; 洗车与送车时间ToolStripMenuItem.Enabled = false; 分单ToolStripMenuItem.Enabled = false; } }
private void bt_MouseUp(object sender, MouseEventArgs e) { if (IsMove) { if (((Control)sender).Tag.ToString() != "维修进行中" && ((Control)sender).Tag.ToString() != "中断") { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } decimal top = decimal.Parse(Convert.ToString(((Control)sender).Top - dataGridView1.ColumnHeadersHeight)); decimal height = decimal.Parse(dataGridView1.Rows[0].Height.ToString()); Rowindex = int.Parse(decimal.Round(top / height, 0).ToString()); if (Math.Abs(((Control)sender).Top - PcStartTop) < dataGridView1.Rows[2].Height / 2) { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } if (top == 0) { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } if (Rowindex == -1) { Rowindex = 0; } ((Control)sender).Top = Rowindex * dataGridView1.Rows[0].Height + dataGridView1.ColumnHeadersHeight; try { if (Rowindex > -1) { if (((Control)sender).Name != string.Empty) { //记录ID int recordid = int.Parse(((Control)sender).Name); //维修工时 decimal servicehours = ClsBLL.GetServiceHour(recordid); //维修工人 string serviceworker = dataGridView1.Rows[Rowindex].Cells[1].Value.ToString(); if (MessageBox.Show("你确定要把该单转给<" + serviceworker + ">做吗?", "", MessageBoxButtons.YesNo) == DialogResult.No) { ((Control)sender).Top = PcStartTop; ((Control)sender).Left = PcStartLeft; return; } DoubleClickButton bt = (DoubleClickButton)((Control)sender); string[] strs = bt.ImageKey.Split(new Char[] { ',' }); string startdate = strs[4]; //计划完成工作时间 = 开始工作时间 + 维修工时 string plancomplete = strs[5]; //预计完成时间 if (((Control)sender).Tag.ToString() == "中断") { ClsBLL.ServicePauseStart(recordid); plancomplete = DateTime.Parse(plancomplete).AddMinutes(ClsBLL.Pausemins(recordid, DateTime.Parse(startdate))).ToShortDateString(); } string sqlstring = "Insert Into BookingAdd(BookID,OldWorker,StartServiceTime)Select ID,Worker,StartServiceTime from Booking where ID=" + recordid; sqlstring += ";Update Booking Set StartServiceTime='" + DateTime.Now.ToString() + "',PlanCompleteTime='" + plancomplete + "', Worker='" + serviceworker + "',State='维修进行中' where ID=" + recordid; SQLDbHelper.ExecuteSql(sqlstring); ClsBLL.AddMsg(recordid, "车牌号码:" + strs[1] + ",该单转给<" + serviceworker + ">做"); 刷新ToolStripMenuItem_Click(null, null); } } } catch (Exception Err) { MessageBox.Show(Err.Message); } } IsMove = false; }
//添加车辆预约卡片 private void AddCarCard(string ID, string info, int rowindex) { DoubleClickButton bt = new DoubleClickButton(); string[] strs = info.Split(new Char[] { ',' }); string startdate = strs[4]; decimal hours = decimal.Parse(strs[3]); string plancomdate = strs[5];//计划完成时间 DateTime PlanEndDate = DateTime.Now; if (plancomdate != string.Empty) { PlanEndDate = DateTime.Parse(plancomdate); } else { PlanEndDate = DateTime.Parse(startdate).AddMinutes(double.Parse(Convert.ToString(hours * 60 + ClsBLL.Pausemins(int.Parse(ID), DateTime.Parse(startdate))))); } if (strs[0] == "中断") //如果是中断,则停在做中断操作时的时间点,否则停在按计算计划完成的时间点上 { PlanEndDate = ClsBLL.PauseTime(int.Parse(ID)); } TimeSpan DtSp = PlanEndDate.Subtract(starttime); //计划完成时间和开始时间或计划开始时间的差 int hour = DtSp.Hours; //如果超出了时间范围,显示在最后一列 if (hour > dataGridView1.ColumnCount - 3) { hour = dataGridView1.ColumnCount - 3; } if (hour < 0) { hour = 0; } bt.AccessibleDescription = hour.ToString(); bt.TabIndex = rowindex; Cards[rowindex, hour] = Cards[rowindex, hour] + 1; decimal left = dataGridView1.Columns[0].Width + dataGridView1.Columns[1].Width + dataGridView1.Columns[2].Width * hour; bt.Left = int.Parse(Convert.ToString(Math.Round(left, 0))); int top = rowindex * dataGridView1.Rows[0].Height + dataGridView1.ColumnHeadersHeight + 3; bt.Height = dataGridView1.Rows[0].Height - 6; bt.Width = dataGridView1.Columns[2].Width; bt.Top = top; bt.Tag = strs[0]; //状态 bt.Name = ID; bt.ImageKey = info; dataGridView1.Controls.Add(bt); string planout = strs[7]; if (planout != string.Empty) { planout = DateTime.Parse(planout).ToString("MM-dd HH:mm"); } bt.Text = strs[1] + "\n" + planout; if (strs[8].IndexOf("分单") > -1) { string fendan = string.Empty; if (strs[8].Length > strs[8].IndexOf("分单") + 2) { fendan = strs[8].Substring(strs[8].IndexOf("分单") + 2, 1); if (!ClsBLL.IsNumber(fendan)) { fendan = string.Empty; } } if (fendan == string.Empty) { bt.Text = strs[1] + " 合\n" + planout; } else { bt.Text = strs[1] + " 合" + fendan + "\n" + planout; } } bt.Font = new Font("宋体", 11, FontStyle.Regular); ToolTip tt = new ToolTip(); tt.SetToolTip(bt, strs[strs.Length - 1]); Color cl = Color.PowderBlue; //"正式","已派工", "维修进行中", "中断", "完工", "洗车","过时","延时到明天" if (strs[0] == States[2]) { cl = Color.Green; if (strs[8].IndexOf("返修") > -1) { cl = Color.MediumSeaGreen; } if (strs[8].IndexOf("追加项目") > -1) { cl = Color.OliveDrab; } } if (strs[0] == States[3]) { cl = Color.LightGray; } if (strs[0] == States[4]) { cl = Color.Blue; } if (strs[0] == States[5]) { cl = Color.MediumOrchid; } if (strs[0] == States[6]) { cl = Color.Red; } if (strs[0] == States[7]) { cl = Color.Orange; } bt.BackColor = cl; bt.ContextMenuStrip = contextMenuStrip2; bt.MouseDown += new MouseEventHandler(bt_MouseDown); bt.MouseMove += new MouseEventHandler(bt_MouseMove); bt.MouseUp += new MouseEventHandler(bt_MouseUp); bt.DoubleClick += new EventHandler(bt_DoubleClick); //ChangeWidth(rowindex,hour,bt); }
public frmDelayService(int recordid, DoubleClickButton bt) { InitializeComponent(); RecordID = recordid; Bt = bt; }