private void LogicGraph_Load(object sender, EventArgs e) { if (iUnitNo == 5) { formularTempHs = GlobalVariables.FormulaHs1; } else { formularTempHs = GlobalVariables.FormulaHs2; } foreach (DataRow row in viewTagSet.Table.Rows) { try { if (row["DataSourcesNo"].ToString() == "2") { TreeNode node = new TreeNode(); node.Text = row["id"] + ":" + row["tagdesc"] + ":RV:" + row["tagvalue"] + ", SV:" + row["standardvalue"]; node.Text += ", ST:" + row["setvalue"] + ", F=" + formularTempHs["F" + row["id"]]; treeView1.Nodes.Add(node); addNode(node, row["id"].ToString()); } } catch (Exception ex) { WriteLog.WriteLogs(row["id"].ToString() + row["tagdesc"] + ", F=" + formularTempHs["F" + row["id"]] + "\r\n" + ex.ToString()); } } }
/// <summary> /// 执行SQL语句并返回数据表 /// </summary> /// <param name="Sqlstr">SQL语句</param> /// <returns></returns> public static DataTable ExecuteDt(String Sqlstr, out string error) { error = ""; String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr)) { SqlDataAdapter da = new SqlDataAdapter(Sqlstr, conn); DataTable dt = new DataTable(); try { conn.Open(); da.Fill(dt); } catch (Exception E) { error = E.Message; WriteLog.WriteLogs("获取数据表时报错: " + E.ToString()); } finally { conn.Close(); conn.Dispose(); } return(dt); } }
/// <summary> /// 执行不带参数的SQL语句 /// </summary> /// <param name="Sqlstr"></param> /// <returns></returns> public static int ExecuteSql(String Sqlstr) { int i = 0; try { String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr)) { SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = Sqlstr; conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); conn.Dispose(); i = 1; } } catch (Exception e) { WriteLog.WriteLogs("执行sql语句出错" + Sqlstr + " ; " + e.Message); try { WriteLog.WriteLogs("InnerException:" + e.InnerException.Message); } catch { } WriteLog.WriteLogs("ErrorSource:" + e.Source.ToString()); WriteLog.WriteLogs("ErrorSource:" + e.TargetSite.Attributes.ToString()); } return(i); }
/// <summary> ///获取单个记录 /// </summary> /// <param name="sqlstr"></param> /// <param name="con"></param> /// <param name="error"></param> /// <returns></returns> public static string ExecuteScalar(string sqlstr) { string temp = ""; String ConnStr = GetSqlConnection(); using (SqlConnection conn = new SqlConnection(ConnStr)) { SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = sqlstr; //int i = 0; try { conn.Open(); temp = cmd.ExecuteScalar().ToString(); } catch (Exception e) { WriteLog.WriteLogs("获取单值时报错:" + e.ToString()); } finally { conn.Close(); conn.Dispose(); } return(temp); } }
private void AlarmList_Load(object sender, EventArgs e) { if (whichOne.Equals("YXYH")) { this.Text = "运行优化报警历史"; if (UnitNO == 5) { sql = "select top 100 * from AlarmYXYH where UnitNO=5 order by AlarmTime desc"; } else if (UnitNO == 6) { sql = "select top 100 * from AlarmYXYH where UnitNO=6 order by AlarmTime desc"; } } try { dt = SQLHelper.ExecuteDt(sql); this.dataGridView1.AutoGenerateColumns = false; this.dataGridView1.DataSource = dt; } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); MessageBox.Show("无数据"); } }
private void AlarmList_Load(object sender, EventArgs e) { if (whichOne.Equals("FCZ")) { this.Text = "防颤振报警历史"; sql = "select AlarmText, AlarmDesc, AlarmState, AlarmTime, AlarmEndTime, AlarmLasts from AlarmFCZ"; } else if (whichOne.Equals("YXYH")) { this.Text = "运行优化报警历史"; sql = "select top 100 AlarmText, AlarmDesc, AlarmState, AlarmTime, AlarmEndTime, AlarmLasts from AlarmYXYH order by AlarmTime desc"; } try { dt = SQLHelper.ExecuteDt(sql); this.dataGridView1.AutoGenerateColumns = false; this.dataGridView1.DataSource = dt; } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); MessageBox.Show("无数据"); } }
private void dataGridView1_DoubleClick(object sender, EventArgs e) { try { HistoryLines m_frmHistoryLines = new HistoryLines(UnitNO); m_frmHistoryLines.labelTag.TagID = int.Parse(dataGridView1.CurrentRow.Cells["TagID"].Value.ToString()); m_frmHistoryLines.labelTag.TagDesc = dataGridView1.CurrentRow.Cells["TagDesc"].Value.ToString(); m_frmHistoryLines.Show(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
// 判断提示报警标记 /// <summary> /// 判断提示报警标记 /// </summary> static void JustPromptAlarm(int UnitNO) { m_bIsPromptAlarm = false; m_bIsRefused = false; if (m_RunOptimizePromptTypeCurrent != m_RunOptimizePromptTypeSaved)//报警状态发生改变 { //保存运行优化提示类型改变的时间和新产生的类型 DateTime timeCurrentChanged = DateTime.Now; //保存报警改变的时间 if (m_RunOptimizePromptTypeSaved != RunOptimizePromptType.Optimized) //上次报警结束 { string sSql = "update AlarmYXYH set AlarmState='报警结束',AlarmEndTime='" + PublicFunction.DateTimeToString(timeCurrentChanged) + "',AlarmLasts='" + PublicFunction.GetTimeSpanString(timeCurrentChanged - m_timeChanged) + "' where AlarmTime='" + PublicFunction.DateTimeToString(m_timeChanged) + "'"; try { SQLHelper.ExecuteSql(sSql); } catch { WriteLog.WriteLogs("执行SQL失败:" + sSql); } } if (m_RunOptimizePromptTypeCurrent != RunOptimizePromptType.Optimized)//新报警开始 { m_bIsPromptAlarm = true; string sSql = "insert into AlarmYXYH(AlarmTime,AlarmText,AlarmState,UnitNO) values('" + PublicFunction.DateTimeToString(timeCurrentChanged) + "','" + GetPromptText() + "','正在报警'," + UnitNO + ")"; try { SQLHelper.ExecuteSql(sSql); } catch { WriteLog.WriteLogs("执行SQL失败:" + sSql); } } m_timeChanged = timeCurrentChanged; m_RunOptimizePromptTypeSaved = m_RunOptimizePromptTypeCurrent; } else if (m_RunOptimizePromptTypeCurrent != RunOptimizePromptType.Optimized) { if ((m_timeAccept - m_timeChanged).TotalSeconds > 0 || (m_timeRefuse - m_timeChanged).TotalSeconds > 0) { if ((m_timeAccept - m_timeRefuse).TotalSeconds > 0) //点击“接受”之后的时间判断 { if ((DateTime.Now - m_timeAccept).TotalMinutes > 30) //点击“知道了”按钮30分钟之后,如果未优化调整,则再次报警 { m_bIsPromptAlarm = true; } } else//点击窗口关闭按钮之后的时间判断 { if ((DateTime.Now - m_timeRefuse).TotalHours > 8)//点击窗口关闭按钮8小时之后,如果未优化调整,则再次报警 { m_bIsPromptAlarm = true; } } } else { m_bIsPromptAlarm = true; } } }
/// <summary> /// 设定绑定标签的Text(测点值+测点单位)。 /// </summary> void SetBindingLabelsText() { try { Control control, parent; parent = panel6; LabelTag labelTag = null; foreach (DataRow row in YXYHTagLabelBinding.getAllData().Rows) { try { //由父控件找到本Label control = parent.Controls.Find(row["LabelName"].ToString(), false)[0]; control.Text = CalTagValue.GetTagValueAndUnitByID(row["TagID"].ToString()); control.Refresh(); try { labelTag = (LabelTag)control.Tag; if (labelTag.IsSetToolTipText == false) { toolTip1.SetToolTip(control, row["TagDesc"].ToString()); labelTag.IsSetToolTipText = true; labelTag.TagID = int.Parse(row["TagID"].ToString()); labelTag.TagDesc = row["TagDesc"].ToString(); control.Tag = labelTag; } if (labelTag.TagID == 0) { labelTag.TagID = int.Parse(row["TagID"].ToString()); labelTag.TagDesc = row["TagDesc"].ToString(); control.Tag = labelTag; WriteLog.WriteLogs("id=0"); } } catch { control.Tag = new LabelTag(true, int.Parse(row["TagID"].ToString()), row["TagDesc"].ToString()); toolTip1.SetToolTip(control, row["TagDesc"].ToString()); } } catch (Exception ex) { //WriteLog.WriteLogs(ex.ToString()); } } lblRunOptimizePromptText.Text = RunOptimizePrompt.GetPromptText(); lblRunOptimizePromptText.ForeColor = RunOptimizePrompt.GetPromptTextForeColor(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
// 构造函数 /// <summary> /// 构造函数 /// </summary> static ConstYXYH() { try { //CurrentTable = SQLHelper.ExecuteScalar("SELECT ConfigValue FROM YXYHConfig where configkey='CurrentTable'").ToString(); //YearOfDataSaved =byte.Parse( SQLHelper.ExecuteScalar("SELECT ConfigValue FROM YXYHConfig where configkey='YearOfDataSaved'").ToString()); IsCanMoveLabel = bool.Parse(SQLHelper.ExecuteScalar("SELECT ConfigValue FROM YXYHConfig where configkey='IsCanMoveLabel'").ToString()); IsCanAddLabel = bool.Parse(SQLHelper.ExecuteScalar("SELECT ConfigValue FROM YXYHConfig where configkey='IsCanAddLabel'").ToString()); CurrentYXYHTotalDataTable = SQLHelper.ExecuteScalar("SELECT ConfigValue FROM YXYHConfig where configkey='CurrentTotalTable'").ToString(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
private void AlarmList_Load(object sender, EventArgs e) { try { MinMaxValue mmv = null; if (UnitNO == 5) { dtAvg = TableMinMaxValue.getDatasFiveWithValueToData(); foreach (DataRow row in dtAvg.Rows) { mmv = (MinMaxValue)TagLJValue.MinMaxValueHsFive["F" + row["TagID"].ToString()]; row["AvgValue"] = mmv.AvgValue * mmv.AvgToDataRate; } dtTotal = FTableTotalTags.getDataTableByRowFilter("IsResetShow=1"); DataTable dtTemp = GlobalVariables.dtOneRowTotalDataFive; foreach (DataRow row in dtTotal.Rows) { try { row["TotalValue"] = dtTemp.Rows[0]["F" + row["id"].ToString()]; } catch { } } } else if (UnitNO == 6) { dtAvg = TableMinMaxValue.getDatasSixWithValueToData(); foreach (DataRow row in dtAvg.Rows) { mmv = (MinMaxValue)TagLJValue.MinMaxValueHsSix["F" + row["TagID"].ToString()]; row["AvgValue"] = mmv.AvgValue * mmv.AvgToDataRate; } dtTotal = STableTotalTags.getDataTableByRowFilter("IsResetShow=1"); DataTable dtTemp = GlobalVariables.dtOneRowTotalDataSix; foreach (DataRow row in dtTotal.Rows) { try { row["TotalValue"] = dtTemp.Rows[0]["F" + row["id"].ToString()]; } catch { } } } dataGridView1.AutoGenerateColumns = false; this.dataGridView1.DataSource = dtAvg; dataGridView2.AutoGenerateColumns = false; this.dataGridView2.DataSource = dtTotal; } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); MessageBox.Show("无数据"); } }
private void Label_DoubleClick(object sender, EventArgs e) { try { LabelTag labelTag = (LabelTag)((Label)sender).Tag; if (labelTag.TagID > 0) { HistoryLines m_frmHistoryLines = new HistoryLines(); m_frmHistoryLines.labelTag.TagID = labelTag.TagID; m_frmHistoryLines.labelTag.TagDesc = labelTag.TagDesc; m_frmHistoryLines.ShowDialog(); } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
//查询 private void btnQuery_Click(object sender, EventArgs e) { sql = "select AlarmText, AlarmDesc, AlarmState, AlarmTime, AlarmEndTime, AlarmLasts from AlarmYXYH where UnitNO=" + UnitNO + " and (AlarmTime>='" + dateTimePickerBegin1.Value.ToString("yyyy-MM-dd") + "' and AlarmTime<='" + dateTimePickerEnd1.Value.ToString("yyyy-MM-dd") + "') order by AlarmTime desc"; try { DataTable dt = SQLHelper.ExecuteDt(sql); this.dataGridView1.AutoGenerateColumns = false; this.dataGridView1.DataSource = dt; } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
public static string getTableNameByDate(DateTime dtDay) { string sTable = "tagdata"; string sSql = "select top 1 convert(char(10),convert(datetime,'" + dtDay + "'),112) from tags"; try { string sDate = SQLHelper.ExecuteScalar(sSql); sTable += sDate; } catch (Exception E) { WriteLog.WriteLogs("根据时间获取表名时报错 " + E.ToString()); } return(sTable); }
//获取昨日数据表名 public static string getYesTableName() { string sTable = "tagdata"; string sSql = "select top 1 convert(char(10),DATEADD(day,-1,getdate()),112) from tags"; try { string sDate = SQLHelper.ExecuteScalar(sSql); sTable += sDate; } catch (Exception E) { WriteLog.WriteLogs("获取昨日表名时报错 " + E.ToString()); } return(sTable); }
/// <summary> /// 设置Label的可见性 /// </summary> public void SetLabelVisible(bool bHCGDChecked) { Control control, parent = panel1; LabelTag labelTag = null; int i; string sTagID = ""; string[] sHideIDs;//要隐藏的测点 if (bHCGDChecked == true) { sHideIDs = sUnit2HCGR_IDs.Split(','); } else { sHideIDs = sUnit2HCGD_IDs.Split(','); } dtControls = TableControlConfig.getDataTableByRowFilter("[Parent] like 'YXYHMainSix.%' and [TagID] in (" + sUnit2HCGD_IDs + "," + sUnit2HCGR_IDs + ")"); foreach (DataRow row in dtControls.Rows) { try { //由父控件找到本Label try { control = parent.Controls.Find(row["ControlName"].ToString(), false)[0]; } catch { continue; } labelTag = (LabelTag)control.Tag; control.Visible = true; sTagID = row["TagID"].ToString(); for (i = 0; i < sHideIDs.Length; i++) { if (sTagID == sHideIDs[i]) { control.Visible = false; break; } } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } } dtControls.Dispose(); dtControls = null; }
/// <summary> /// 设定绑定标签的Text(测点值+测点单位)。 /// </summary> void SetBindingLabelsText() { try { int i; LabelTag labelTag; Control control, parent = panel1; foreach (DataRowView row in viewTagLabelBinding) { try { //由父控件找到本Label control = parent.Controls.Find(row["LabelName"].ToString(), false)[0]; labelTag = (LabelTag)control.Tag; try { if (labelTag.IsSetToolTipText == false) { toolTip1.SetToolTip(control, row["TagDesc"].ToString()); labelTag.IsSetToolTipText = true; labelTag.TagID = int.Parse(row["TagID"].ToString()); labelTag.TagDesc = row["TagDesc"].ToString(); labelTag.TagUnit = row["unit"].ToString(); } } catch { control.Tag = new LabelTag(true, int.Parse(row["TagID"].ToString()), row["TagDesc"].ToString(), row["unit"].ToString()); toolTip1.SetToolTip(control, row["TagDesc"].ToString()); } //这里是否需要根据机组区分 ZZH control.Text = TagValue.GetShowValueSix(labelTag.TagID, labelTag.TagUnit, row["adjustValue"].ToString()); control.Refresh(); } catch { } } lblRunOptimizePromptText.Text = RunOptimizePrompt.GetPromptText(); lblRunOptimizePromptText.ForeColor = RunOptimizePrompt.GetPromptTextForeColor(); lblTemp.Text = "环境温度:" + TagValue.GetShowValueSix(4208, "℃", ""); //+GlobalVariables.dtOneRowData.Rows[0]["F3208"].ToString(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
private void timerLineBind_Tick(object sender, EventArgs e) { SetBindingLabelsText(); //SetLabelsForeColor(Color.Red); //SetLabelsForeColor(Color.Lime); lblDQY.Text = "大气压力:" + CalTagValue.GetTagValueAndUnitByID("4"); lblTemp.Text = "环境温度:" + CalTagValue.GetTagValueAndUnitByID("208"); m_dtLineData = CalTagValue.GetAllData(); try { chart1.DataSource = m_dtLineData; chart1.Series[0].LegendText = "优化出水温度:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F213"].ToString()), 2) + "℃"; chart1.Series[1].LegendText = "实际出水温度:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F152"].ToString()), 2) + "℃"; chart1.DataBind(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } try { chart3.DataSource = m_dtLineData; chart3.Series[0].LegendText = "优化热负荷:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F219"].ToString()), 2) + "瓦/平方米"; chart3.Series[1].LegendText = "实际热负荷:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F202"].ToString()), 2) + "瓦/平方米"; chart3.DataBind(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } try { chart2.DataSource = m_dtLineData; chart2.Series[0].LegendText = "实际循环水量:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F161"].ToString()), 2) + "t/h"; chart2.Series[1].LegendText = "优化循环水量:" + Math.Round(double.Parse(m_dtLineData.Rows[m_dtLineData.Rows.Count - 1]["F222"].ToString()), 2) + "t/h"; chart2.DataBind(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } viewShowList = CalTagValue.GetAllTagValues().DefaultView; viewShowList.RowFilter = "isShow=1 and TagValue>0"; dataGridView1.DataSource = viewShowList; //dataGridView1.Refresh(); }
private void contextMenuStrip_Label_del_Click(object sender, EventArgs e) { if (MessageBox.Show("确定要删除此测点吗?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { try { ArrayList listSql = new ArrayList(); listSql.Add("delete [YXYHControlConfig] where ControlName='" + control.Name + "'"); listSql.Add("delete [YXYHTagLabelBinding] where LabelName='" + control.Name + "'"); SQLHelper.ExecuteSql(listSql); tagLabelBinding.m_viewTagLabelBinding.RowFilter = "LabelName='" + control.Name + "'"; if (tagLabelBinding.m_viewTagLabelBinding.Count > 0) { tagLabelBinding.m_viewTagLabelBinding[0].Delete(); } control.Visible = false; control.Dispose(); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } } }
private void btnOk_Click(object sender, EventArgs e) { try { dtCheckedTags = m_viewTagValue.Table.GetChanges(); List <DataRow> lstDeleteRows = new List <DataRow>(); if (dtCheckedTags != null) { foreach (DataRow row in dtCheckedTags.Rows) { if (row["CheckRow"].ToString() == "1") { sExcelCells += row["ExcelCell"] + ","; } else { lstDeleteRows.Add(row); } } sExcelCells = sExcelCells.Trim(','); if (lstDeleteRows.Count > 0) { foreach (DataRow row in lstDeleteRows) { dtCheckedTags.Rows.Remove(row); } } this.Close(); } else { MessageBox.Show("请选择测点!"); } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
private void btnQuery_Click(object sender, EventArgs e) { try { lblQueryWait.Visible = true; lblQueryWait.Refresh(); string sTime = PublicFunction.DateTimeToStringWithfff(DateTime.Now); string sSql = "insert into QueryAlarm(QueryDate,StartTime,EndTime,QueryFields,UnitNO,AlarmDesc) values('" + sTime + "','" + dateTimePickerBegin2.Value + "','" + dateTimePickerEnd2.Value + "','" + F18 + "'," + UnitNO + ",'查询数据时,未按提示等待,做其他操作造成程序退出!')"; try { SQLHelper.ExecuteSql(sSql); } catch { } dtChart = TagLJValue.QueryDBTotalData(dateTimePickerBegin2.Value, dateTimePickerEnd2.Value, "[ValueTime],[HourOfYear]," + F18, UnitNO); if (dtChart.Rows.Count > 0) { if (rdoTotalHours.Checked == true) { chart1.Series[0].XValueMember = "HourOfYear"; chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double; dXMin = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString()); dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString()); chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto; chart1.ChartAreas[0].AxisX.MajorGrid.Interval = (dHourOfYear - dXMin) / 10; chart1.ChartAreas[0].AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto; chart1.ChartAreas[0].AxisX.Interval = (dHourOfYear - dXMin) / 10; chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数"; chart1.ChartAreas[0].AxisX.LabelStyle.Format = "0"; } else { DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"]; DateTime timeEnd = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"]; chart1.Series[0].XValueMember = "ValueTime"; chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime; chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours; chart1.ChartAreas[0].AxisX.MajorGrid.Interval = (timeEnd - timeBegin).TotalHours / 6; chart1.ChartAreas[0].AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours; chart1.ChartAreas[0].AxisX.Interval = (timeEnd - timeBegin).TotalHours / 6; chart1.ChartAreas[0].AxisX.Title = "日期时间"; chart1.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm"; } chart1.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Far; chart1.ChartAreas[0].AxisY.Title = "累计节标煤量:" + Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][F18].ToString()), 2) + "(吨)"; chart1.DataSource = dtChart; chart1.DataBind(); timerChartBind.Enabled = false; } else { MessageBox.Show("没有查询到数据!"); } sSql = "delete QueryAlarm where QueryDate='" + sTime + "'"; try { SQLHelper.ExecuteSql(sSql); } catch { } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); MessageBox.Show("错误:" + ex.Message); } finally { lblQueryWait.Visible = false; lblQueryWait.Refresh(); } }
/// <summary> /// 加载程序运行中配置的控件 /// </summary> void AddConfigedControl() { try { //控制添加测点的按钮是否可见 if (ConstYXYH.IsCanAddLabel) { btnAddTag.Visible = true; } else { btnAddTag.Visible = false; } int i; Control parent = null; Control control = null; Rectangle rect; LabelTag labelTag = null; foreach (DataRow row in dtControls.Rows) { parent = panel6; try { //这里先以Label写死;如果以后还有其他类型的控件,则在这里枚举 control = new Label(); ((Label)control).AutoSize = true; control.Name = row["ControlName"].ToString(); control.Text = control.Name; if (row["ControlText"].ToString().Length > 1) { control.Text = row["ControlText"].ToString(); } rect = new Rectangle(); rect.X = int.Parse(row["ControlX"].ToString()); rect.Y = int.Parse(row["ControlY"].ToString()); control.Bounds = rect; try { control.ForeColor = Color.FromArgb(int.Parse(row["ForeColor"].ToString())); } catch { } try { control.BackColor = Color.FromArgb(int.Parse(row["BackColor"].ToString())); } catch { } labelTag = new LabelTag(); labelTag.ControlX = rect.X; labelTag.ControlY = rect.Y; labelTag.ParentHeight = int.Parse(row["ParentHeight"].ToString()); labelTag.ParentWidth = int.Parse(row["ParentWidth"].ToString()); control.Tag = labelTag; control.DoubleClick += new EventHandler(Label_DoubleClick); //双击事件 control.MouseDown += new MouseEventHandler(control_MouseDown); //鼠标按下事件 if (ConstYXYH.IsCanMoveLabel) { control.MouseMove += new MouseEventHandler(control_MouseMove); //移动时的鼠标移动事件 control.MouseUp += new MouseEventHandler(control_MouseUp); //移动时的鼠标抬起事件 control.ContextMenuStrip = contextMenuStrip_Label; //添加快捷菜单 } parent.Controls.Add(control); } catch { } } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
/// <summary> /// 加载程序运行中配置的控件 /// </summary> void AddConfigedControl() { try { int i; Control parent = null; Control control = null; Rectangle rect; LabelTag labelTag = null; foreach (DataRow row in dtControls.Rows) { parent = panel1; try { if (row["type"].ToString() == "PictureBox") { int controlX = int.Parse(row["ControlX"].ToString()); int controlY = int.Parse(row["ControlY"].ToString()); control = new PictureBox(); ((PictureBox)control).BackgroundImage = global::KSPrj.Properties.Resources.verticalGreen; ((PictureBox)control).BackgroundImageLayout = ImageLayout.Stretch; control.Name = row["ControlName"].ToString(); rect = new Rectangle(); rect.X = controlX; rect.Y = controlY; labelTag = new LabelTag(); labelTag.ParentHeight = int.Parse(row["ParentHeight"].ToString()); labelTag.ParentWidth = int.Parse(row["ParentWidth"].ToString()); labelTag.ControlX = controlX; labelTag.ControlY = controlY; labelTag.UnitNo = byte.Parse(row["UnitNo"].ToString()); control.Tag = labelTag; control.Bounds = rect; control.Size = new System.Drawing.Size(12, 18); parent.Controls.Add(control); control.Refresh(); continue; } //这里先以Label写死;如果以后还有其他类型的控件,则在这里枚举 control = new Label(); ((Label)control).AutoSize = true; control.Name = row["ControlName"].ToString(); control.Text = control.Name; if (row["ControlText"].ToString().Length > 1) { control.Text = row["ControlText"].ToString(); } if (row["FontSize"].ToString().Length > 1) { control.Font = new System.Drawing.Font("宋体", float.Parse(row["FontSize"].ToString()), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); } rect = new Rectangle(); rect.X = int.Parse(row["ControlX"].ToString()); rect.Y = int.Parse(row["ControlY"].ToString()); control.Bounds = rect; try { control.ForeColor = Color.FromArgb(int.Parse(row["ForeColor"].ToString())); } catch { } try { control.BackColor = Color.Transparent; }//Color.FromArgb(int.Parse(row["BackColor"].ToString())); catch { } labelTag = new LabelTag(); labelTag.ControlX = rect.X; labelTag.ControlY = rect.Y; labelTag.ParentHeight = int.Parse(row["ParentHeight"].ToString()); labelTag.ParentWidth = int.Parse(row["ParentWidth"].ToString()); labelTag.UnitNo = byte.Parse(row["UnitNo"].ToString()); control.Tag = labelTag; control.DoubleClick += new EventHandler(Label_DoubleClick);//双击事件 parent.Controls.Add(control); } catch { } } } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }
private void timerChartBind_Tick(object sender, EventArgs e) { try { DataRow row; if (lTotalCount < TagLJValue.GetTotalCount(UnitNO)) { lTotalCount = TagLJValue.GetTotalCount(UnitNO); dtChart.Dispose(); dtChart = null; dtChart = TagLJValue.GetTotalDataWithNewTable(UnitNO); if (dtChart.Rows.Count > 0) { dHourOfYear = double.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["HourOfYear"].ToString()); if (rdoTotalHours.Checked == true) { chart1.Series[0].XValueMember = "HourOfYear"; chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Double; dXMin = double.Parse(dtChart.Rows[0]["HourOfYear"].ToString()); chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto; chart1.ChartAreas[0].AxisX.MajorGrid.Interval = (int)(dHourOfYear - dXMin) / 10; chart1.ChartAreas[0].AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto; chart1.ChartAreas[0].AxisX.Interval = (int)(dHourOfYear - dXMin) / 10; chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数"; chart1.ChartAreas[0].AxisX.LabelStyle.Format = "0"; } else { DateTime timeBegin = (DateTime)dtChart.Rows[0]["ValueTime"]; DateTime timeEnd = (DateTime)dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"]; chart1.Series[0].XValueMember = "ValueTime"; chart1.Series[0].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.DateTime; chart1.ChartAreas[0].AxisX.MajorGrid.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours; chart1.ChartAreas[0].AxisX.MajorGrid.Interval = (int)(timeEnd - timeBegin).TotalHours / 6; chart1.ChartAreas[0].AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Hours; chart1.ChartAreas[0].AxisX.Interval = (int)(timeEnd - timeBegin).TotalHours / 6; chart1.ChartAreas[0].AxisX.Title = "时间"; chart1.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy-MM-dd HH:mm"; } chart1.ChartAreas[0].AxisY.Title = "供电累计收入:" + Math.Round(double.Parse(dtChart.Rows[dtChart.Rows.Count - 1][F6].ToString()), 2) + "(万元)"; row = dtChart.NewRow(); row["ValueTime"] = DateTime.Parse(dtChart.Rows[dtChart.Rows.Count - 1]["ValueTime"].ToString()).AddSeconds(1); row["HourOfYear"] = dHourOfYear + 0.0001; dtChart.Rows.Add(row); } } row = dtChart.NewRow(); row["ValueTime"] = DateTime.Now; dHourOfYear += timerChartBind.Interval / 1000 / 3600d; row["HourOfYear"] = dHourOfYear; MinMaxValue mmv = TagLJValue.GetMinMaxValue(F3226, UnitNO); chart1.ChartAreas[0].AxisX.Title = "供热期累计小时数:" + Math.Round(dHourOfYear, 4).ToString("0.0000") + " 累计开始时间:" + mmv.BeginDateString + "\n供电收入最小值:" + Math.Round(mmv.MinValue / 10000, 4).ToString("0.0000") + " 供电收入最小值时间:" + mmv.MinDateString + "\n供电收入最大值:" + Math.Round(mmv.MaxValue / 10000, 4).ToString("0.0000") + " 供电收入最大值时间:" + mmv.MaxDateString + "\n供电收入平均值:" + TagLJValue.GetTotalDataAvg(F6, UnitNO) + "万元/小时"; chart1.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Near; dtChart.Rows.Add(row); chart1.DataSource = dtChart; chart1.DataBind(); WriteLog.WriteLogs("timerChartBind:" + timerChartBind.Enabled); } catch (Exception ex) { WriteLog.WriteLogs(ex.ToString()); } }