using NSAnalysis.DAL; using System; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; using System.Windows.Forms; using Telerik.WinControls.UI; namespace NSAnalysis { public partial class FConfigSetup : Telerik.WinControls.UI.ShapedForm { private CjlrDAL tmdal = new CjlrDAL(); public int idgvSelectRowNumber = 0; #region 鼠标事件 private void btn_MouseHover(object sender, EventArgs e) { RadButton btn = sender as RadButton; btn.BackColor = Color.FromArgb(0, 151, 186); } private void btn_MouseLeave(object sender, EventArgs e) { RadButton btn = sender as RadButton; btn.BackColor = Color.FromArgb(19, 46, 53); } #endregion 鼠标事件 public FConfigSetup() { InitializeComponent(); InitStatusComboBox(); SQLHelper.connStr = DatabaseDfn.SqlConnectStr(); } private void FToleranceSetup_Load(object sender, EventArgs e) { dgvTolList.ColumnHeadersDefaultCellStyle.Font = new Font("Segoe UI", 8, FontStyle.Regular); lpcAddTol.labPicture.Click += lpcAddTol_Click; lpcAddTol.labText.Click += lpcAddTol_Click; rtbnSearch_Click(null, null); } // 初始化ComboBox数据源 private void InitStatusComboBox() { var statusList = new List>(); statusList.Add(new KeyValuePair("全部", "all")); statusList.Add(new KeyValuePair("启动", "start")); statusList.Add(new KeyValuePair("停止", "stop")); CB_TaskStatus.DataSource = statusList; CB_TaskStatus.DisplayMember = "Key"; CB_TaskStatus.ValueMember = "Value"; // 设置默认选中项为“全部” } // 获取选中状态值 private string GetSelectedStatus() { if (CB_TaskStatus.SelectedIndex < 0) return string.Empty; return CB_TaskStatus.SelectedValue.ToString(); } public void rtbnSearch_Click(object sender, EventArgs e) { DataTable dt = tmdal.SelectTaskByCondition(rtbCarName.Text.Trim(), rtbCarModel.Text.Trim(), GetSelectedStatus()); if (dt.Rows.Count > 0) { dgvTolList.AutoGenerateColumns = false; dgvTolList.DataSource = dt; SetdgvRowBgColor(dgvTolList); labSearchResult.Visible = false; } else { dgvTolList.AutoGenerateColumns = false; dgvTolList.DataSource = dt; labSearchResult.Visible = true; } } /// /// 设置DataGridView各行变色 /// /// DataGridView public void SetdgvRowBgColor(DataGridView dgv) { if (dgv.Rows.Count > 0) { foreach (DataGridViewRow item in dgv.Rows) { if (item.Index % 2 == 0) { item.DefaultCellStyle.BackColor = Color.FromArgb(19, 46, 53); } else { item.DefaultCellStyle.BackColor = Color.FromArgb(27, 60, 68); } } } } private void dgvTolList_RowStateChanged(object sender, DataGridViewRowStateChangedEventArgs e) { e.Row.HeaderCell.Value = string.Format("{0}", e.Row.Index + 1); } private void lpcAddTol_Click(object sender, EventArgs e) { FAddConfig fat = new FAddConfig(this); fat.ShowDialog(this); } private void dgvTolList_CellContentClick(object sender, DataGridViewCellEventArgs e) { string buttonText = ""; if (e.RowIndex < 0 || e.ColumnIndex < 0) { return; } try { buttonText = dgvTolList.Columns[e.ColumnIndex].HeaderText; } catch (Exception) { buttonText = " "; } if (buttonText == "删除") { if (DialogResult.Yes == MessageBox.Show("您确定要删除该条分发配置吗,注意:删除后不可恢复!", "警告", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)) { string modelName = dgvTolList.Rows[e.RowIndex].Cells["modelsName"].Value.ToString(); string modelsCode = dgvTolList.Rows[e.RowIndex].Cells["modelsCode"].Value.ToString(); if (string.IsNullOrEmpty(modelsCode) || string.IsNullOrEmpty(modelName)) { MessageBox.Show("分发配置代码或名称不能为空,无法删除!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } try { tmdal.UpdateIsDelete(modelName, modelsCode); } catch (Exception ex) { MessageBox.Show("删除分发配置失败,原因:" + ex.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } MessageBox.Show("删除分发配置成功! ", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); rtbnSearch_Click(null, null); } } if (buttonText == "修改" || buttonText == "Edit") { idgvSelectRowNumber = e.RowIndex; FEditConfig sfeditcnc = new FEditConfig(this); sfeditcnc.ShowDialog(); } } private void dgvTolList_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { // 系统状态 if (dgvTolList.Columns .Cast() .Any(c => c.DataPropertyName == "status" && c.Index == e.ColumnIndex)) { switch (e.Value.ToString()) { case "start": e.Value = "启动"; //dgvTolList.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.White; // 默认背景色 break; case "stop": dgvTolList.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.Red; e.Value = "停止"; break; } } //读取方式 if (dgvTolList.Columns .Cast() .Any(c => c.DataPropertyName == "readType" && c.Index == e.ColumnIndex)) { switch (e.Value.ToString()) { case "1": e.Value = "文件名称"; break; case "2": e.Value = "文件内容"; break; } } // 位置 if (dgvTolList.Columns .Cast() .Any(c => c.DataPropertyName == "position" && c.Index == e.ColumnIndex)) { switch (e.Value.ToString()) { case "L": e.Value = "左侧"; break; case "R": e.Value = "右侧"; break; } } } } }