public void AddRow(DateTime _InTime, int Type, int Severity, string Title, string Msg, int AlarmGroupID = 0, int State = 0) { ErrList_XSD.ErrListRow dr = _xsd.ErrList.NewErrListRow(); dr._InTime = _InTime; dr.Type = Type; dr.Severity = Severity; dr.Title = Title; dr.Msg = Msg; dr.AlarmGroupID = AlarmGroupID; dr.State = State; dr.Icon = imageList1.Images[dr.Type]; _xsd.ErrList.Rows.Add(dr); }
/// <summary> /// 获取数据库连接传回的消息并显示到界面 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void sc_InfoMessage(object sender, SqlInfoMessageEventArgs e) { Apq.Windows.Delegates.Action_UI <TabPage>(this, tpInfo, delegate(TabPage ctrl) { foreach (SqlError r in e.Errors) { if (r.Class > 0) { TextBox txtMsg = new TextBox(); txtMsg.Multiline = true; txtMsg.ReadOnly = true; txtMsg.ScrollBars = ScrollBars.Vertical; txtMsg.WordWrap = false; txtMsg.AcceptsTab = true; txtMsg.AcceptsReturn = true; txtMsg.BorderStyle = BorderStyle.None; txtMsg.BackColor = System.Drawing.SystemColors.Control; txtMsg.Font = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); txtMsg.Size = new System.Drawing.Size(tc.Width - 30, 20); int nY = 9; foreach (Control c in tpInfo.Controls) { nY += c.Size.Height; nY += 6; } txtMsg.Location = new System.Drawing.Point(3, nY); if (r.Class > 10) { txtMsg.Size = new System.Drawing.Size(this.Parent.Parent.Width - 40, 140); //7行 //meMsg.Properties.ScrollBars = System.Windows.Forms.ScrollBars.Both; txtMsg.ForeColor = System.Drawing.Color.Red; txtMsg.Text += string.Format("消息 {0}, 级别 {1}, 状态 {2}, 第 {3} 行\r\n", r.Number, r.Class, r.State, r.LineNumber); } txtMsg.Text += r.Message; tpInfo.Controls.Add(txtMsg); // 将错误记录到 SqlEdit 的 dsServers 和 dsUI SqlEdit se = null; Control ctrlTmp = this; int ServerID = 0; while (ctrlTmp != null) { ctrlTmp = ctrlTmp.Parent; se = ctrlTmp as SqlEdit; if (se != null) { break; } TabPage xtp = ctrlTmp as TabPage; if (xtp != null) { ServerID = Apq.Convert.ChangeType <int>(xtp.Tag); } } DataView dvErr = new DataView(se.SqlEditDoc.dsDBC.DBI); dvErr.RowFilter = "DBIID = " + ServerID; // 标记本服执行出错 if (dvErr.Count > 0) { object rtLock = se.SqlEditDoc.GetLock(ServerID.ToString()); lock (rtLock) { ErrList_XSD.ErrListRow drErrList = se.SqlEditDoc.dsErr.ErrList.NewErrListRow(); drErrList.DBIID = ServerID; drErrList["__DBIName"] = dvErr[0]["SqlName"]; drErrList.s = r.Message; se.SqlEditDoc.dsErr.ErrList.Rows.Add(drErrList); dvErr[0]["Err"] = true; } } } } }); }