private void FrmMain_Load(object sender, EventArgs e) { try { FormClosing += (senders, ex) => { GC.Collect(); Application.Exit(); }; StringBuilder selectOrder = new StringBuilder(255); PublicClass.GetPrivateProfileString("SkinPath", "SkinPathValue", " ", selectOrder, 255, _configPath); if (string.IsNullOrEmpty(selectOrder.ToString())) { skinEngine1.Active = false; return; } skinEngine1.SkinFile = selectOrder.ToString(); } catch { } }
/// <summary> /// 列表显示内容 /// </summary> private void ShowBegin() { try { //获取设置的显示顺序 StringBuilder selectOrder = new StringBuilder(255); PublicClass.GetPrivateProfileString("SelectOrder", "SelectOrderValue", " ", selectOrder, 255, _configPath); //获取显示信息 DataTable dtShow = BllShowInfo.GetShowStateInfo(selectOrder.ToString()); showContents = new List <ShowContent>(); for (int i = 0; i < dtShow.Rows.Count; i++) { //判断开始结束时间进行显示 if (Convert.ToDateTime(dtShow.Rows[i]["BeginTime"]) <= DateTime.Now && Convert.ToDateTime(dtShow.Rows[i]["EndTime"]) >= DateTime.Now) { if (showInfo.ContainsKey(dtShow.Rows[i]["Id"].ToString())) { continue; } string content = string.Empty;//一个编组序好 int configNum = Convert.ToInt32(dtShow.Rows[i]["ConfigNum"]); //列表 Panel panel = new Panel() { Dock = DockStyle.Top, Height = 70 }; if (Convert.ToInt32(dtShow.Rows[i]["ByOrder"]) == 0)//顺序 { for (int j = 0; j < configNum; j++) { content += (j + 1) + ","; } panel.BackColor = Color.FromArgb(224 + i * 3, 224, 224); } else { for (int j = configNum; 0 < j; j--)//倒序 { content += j + ","; } panel.BackColor = Color.FromArgb(224, 224 + i * 3, 224 + i * 3); } string order = Convert.ToInt32(dtShow.Rows[i]["ByOrder"]) == 0 ? "正序" : "倒序"; Label label = new Label() { Dock = DockStyle.Bottom, Font = new Font("微软雅黑", 13), Height = 70 }; label.Text = "区域:" + dtShow.Rows[i]["AreaName"].ToString() + " 配置编号 " + dtShow.Rows[i]["ConfigName"].ToString() + " 时间段:" + dtShow.Rows[i]["BeginTime"].ToString() + "-" + dtShow.Rows[i]["EndTime"].ToString() + " 编组:" + configNum + " 开始屏幕:" + dtShow.Rows[i]["ScreenID"].ToString() + " 顺序:" + order + " 序号:" + content.Remove(content.LastIndexOf(","), 1); showInfo.Add(dtShow.Rows[i]["Id"].ToString(), Convert.ToDateTime(dtShow.Rows[i]["BeginTime"])); //已显示的内容临时保存 ShowContent showContent = new ShowContent() { ConfigName = dtShow.Rows[i]["ConfigName"].ToString(), GroupNum = configNum, BeginTime = Convert.ToDateTime(dtShow.Rows[i]["BeginTime"]), EndTime = Convert.ToDateTime(dtShow.Rows[i]["EndTime"]), AllContents = content.Remove(content.LastIndexOf(","), 1), SingleTxt = dtShow.Rows[i]["SingleTxt"].ToString(), ScreenID = Convert.ToInt32(dtShow.Rows[i]["ScreenID"]), ByOrder = Convert.ToInt32(dtShow.Rows[i]["ByOrder"]), AddressNum = Convert.ToInt32(dtShow.Rows[i]["AddressNum"]), }; if (!showContents.Contains(showContent)) { showContents.Add(showContent); } panel.Controls.Add(label); panel.Tag = dtShow.Rows[i]["Id"].ToString(); pnlContent.Controls.Add(panel); BllShowInfo.UpdateShowState(dtShow.Rows[i]["ID"].ToString(), 1);//已显示更新状态 } } //到结束时间,不显示 for (int i = 0; i < dtShow.Rows.Count; i++) { if (Convert.ToDateTime(dtShow.Rows[i]["EndTime"]) <= DateTime.Now) { foreach (Panel item in pnlContent.Controls) { if (item.Tag.Equals(dtShow.Rows[i]["ID"].ToString())) { pnlContent.Controls.Remove(item); showInfo.Remove(dtShow.Rows[i]["ID"].ToString()); BllShowInfo.UpdateShowState(dtShow.Rows[i]["ID"].ToString(), 2);//显示结束更新状态 } } } else { continue; } } dtShow.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }