private void btnSave_Click(object sender, EventArgs e) { DataTable dt = bllScreen.GetScreenInfo($" and ScreenID = '{cmbLEDId.Text}'"); if (dt.Rows.Count > 0) { MessageBox.Show("该屏幕已匹配区域!"); return; } if (!string.IsNullOrEmpty(cmbArea.Text) && !string.IsNullOrEmpty(cmbLEDId.Text)) { try { ScreensToArea screens = new ScreensToArea(); screens.ID = Id; screens.ScreenID = cmbLEDId.Text; screens.AreaID = Convert.ToInt32(cmbArea.SelectedValue); if (bllScreen.InsertOrModifyScreen(screens)) { MessageBox.Show("保存成功!"); cmbArea.SelectedIndex = -1; cmbLEDId.SelectedIndex = -1; } else { MessageBox.Show("保存失败,重试!"); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } }
/// <summary> /// 各种类别查询 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSearch_Click(object sender, EventArgs e) { try { switch (_OperateType) { case "区域": DataTable dtArea = bllAreaInfo.GetAreaInfo(txtKey.Text); dgvContent.AutoGenerateColumns = false; dgvContent.DataSource = dtArea; break; case "屏幕": string key = string.Empty; if (!cmbArea.Text.Equals("全部")) { key = $"and AreaId ='{cmbArea.SelectedValue}'"; } DataTable dtScreen = bllScreen.GetScreenInfo(key); dgvContent.AutoGenerateColumns = false; dgvContent.DataSource = dtScreen; break; } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// 根据选择的区域,筛选对应的屏幕 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void cmbAreaId_SelectedIndexChanged(object sender, EventArgs e) { if (cmbAreaId.SelectedValue != null && !string.IsNullOrEmpty(cmbAreaId.Text) && cmbAreaId.SelectedIndex != -1) { DataTable dtLED = bllScreen.GetScreenInfo($"and AreaId ='{cmbAreaId.SelectedValue}'"); ledInfo = new Dictionary <string, int>(); for (int i = 0; i < dtLED.Rows.Count; i++) { ledInfo.Add(dtLED.Rows[i]["ScreenID"].ToString(), Convert.ToInt32(dtLED.Rows[i]["AddressNum"])); } cmbScreens.DisplayMember = "ScreenID"; cmbScreens.ValueMember = "AddressNum"; cmbScreens.DataSource = dtLED; cmbScreens.SelectedIndex = -1; } }
/// <summary> /// 图示显示内容 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void pnlPhoto_Paint(object sender, PaintEventArgs e) { try { //图例 Graphics g = pnlPhoto.CreateGraphics(); Pen pen = new Pen(Color.Red); BllScreen bllScreen = new BllScreen(); for (int i = 0; i < showContents.Count; i++) { DataTable dtScreen = bllScreen.GetScreenInfo($"and AreaId ='{showContents[i].AreaId}'");//查询区域对应的屏幕数量 //偶数画框 if (i % 2 == 0) { if (showContents[i].ByOrder == 0) { //顺序画屏幕框 for (int j = 0; j < dtScreen.Rows.Count; j++) { g.DrawRectangle(pen, 100 + j * 40, 150 * i / 2 + 20, 25, 25); if (j + 1 == showContents[i].ScreenID) { g.DrawString(showContents[i].AllContents.Replace(",", " "), new Font("微软雅黑", 12), Brushes.Black, 105 + j * 40, 150 * i / 2 + 20); } } } else { //倒序画屏幕框 for (int j = 0; j < dtScreen.Rows.Count; j++) { g.DrawRectangle(pen, 100 + j * 40, 150 * i / 2 + 20, 25, 25); if (j == showContents[i].ScreenID - showContents[i].GroupNum) { g.DrawString(showContents[i].AllContents.Replace(",", " "), new Font("微软雅黑", 12), Brushes.Black, 105 + j * 40, 150 * i / 2 + 20); } } } g.DrawRectangle(pen, 100, 150 * i / 2 + 50, 900, 70); g.DrawString("区域:" + showContents[i].AreaId + " 配置编号 " + showContents[i].ConfigName + " 编组:" + showContents[i].GroupNum + " 开始时间:" + showContents[i].BeginTime + " 结束时间:" + showContents[i].EndTime, new Font("微软雅黑", 12), Brushes.Black, 120, 150 * i / 2 + 60); } else //奇数不用画大框 { if (showContents[i].ByOrder == 0) { //顺序画屏幕框 for (int j = 0; j < dtScreen.Rows.Count; j++) { g.DrawRectangle(pen, 100 + j * 40, 150 * (i - 1) / 2 + 125, 25, 25); if (j + 1 == showContents[i].ScreenID) { g.DrawString(showContents[i].AllContents.Replace(",", " "), new Font("微软雅黑", 12), Brushes.Black, 105 + j * 40, 150 * (i - 1) / 2 + 125); } } } else { //倒序画屏幕框 for (int j = 0; j < dtScreen.Rows.Count; j++) { g.DrawRectangle(pen, 100 + j * 40, 150 * (i - 1) / 2 + 125, 25, 25); if (j == showContents[i].ScreenID - showContents[i].GroupNum) { g.DrawString(showContents[i].AllContents.Replace(",", " "), new Font("微软雅黑", 12), Brushes.Black, 105 + j * 40, 150 * (i - 1) / 2 + 125); } } } g.DrawString("区域:" + showContents[i].AreaId + " 配置编号 " + showContents[i].ConfigName + " 编组:" + showContents[i].GroupNum + " 开始时间:" + showContents[i].BeginTime + " 结束时间:" + showContents[i].EndTime, new Font("微软雅黑", 12), Brushes.Black, 120, 150 * (i - 1) / 2 + 90); } } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }