void _BGWScoreCalcRuleLoader_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { ScoreCalcRuleInfoCollection resp = (ScoreCalcRuleInfoCollection)e.Result; FillAdvTreeItem(resp); BtnEnabled(false); scoreCalcRuleEditor1.Visible = false; setDataLoading(false); }
void _BGWScoreCalcRuleLoader_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { comboBoxEx1.Items.Remove(comboItem2); ScoreCalcRuleInfoCollection resp = (ScoreCalcRuleInfoCollection)e.Result; foreach (ScoreCalcRuleInfo scr in resp) { ComboItem item = new ComboItem(); item.Text = scr.Name; item.Tag = scr.ScoreCalcRuleElement; comboBoxEx1.Items.Add(item); } }
void _BGWScoreCalcRuleLoader_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { ScoreCalcRuleInfoCollection resp = (ScoreCalcRuleInfoCollection)e.Result; foreach (ScoreCalcRuleInfo scr in resp) { ButtonItem item = new ButtonItem(scr.ID, scr.Name); item.Tag = scr; itemPanel1.Items.Add(item); item.Click += new EventHandler(item_Click); } btn_update.Enabled = false; btn_delete.Enabled = false; scoreCalcRuleEditor1.Visible = false; itemPanel1.Refresh(); resetDataLoading(); }
/// <summary> /// 把資料填入AdvTree /// </summary> /// <param name="items"></param> private void FillAdvTreeItem(ScoreCalcRuleInfoCollection items) { string noSchoolYear = "未分類"; Dictionary <string, DevComponents.AdvTree.Node> itemNodes = new Dictionary <string, DevComponents.AdvTree.Node>(); // 先根據學年度分類 #region 根據學年度分類 foreach (ScoreCalcRuleInfo item in items) { string schoolYear = item.SchoolYear; if (string.IsNullOrEmpty(item.SchoolYear)) { schoolYear = noSchoolYear; } if (!itemNodes.ContainsKey(schoolYear)) { itemNodes.Add(schoolYear, new DevComponents.AdvTree.Node()); itemNodes[schoolYear].Text = (schoolYear == noSchoolYear) ? noSchoolYear : schoolYear + "學年度"; itemNodes[schoolYear].TagString = (schoolYear == noSchoolYear) ? "" : schoolYear; } DevComponents.AdvTree.Node childNode = new DevComponents.AdvTree.Node(); childNode.Tag = item; childNode.Text = item.TrimName; childNode.Name = item.ID; if (_AdvTreeExpandStatus.ContainsKey(itemNodes[schoolYear].TagString)) { itemNodes[schoolYear].Expanded = _AdvTreeExpandStatus[itemNodes[schoolYear].TagString]; } itemNodes[schoolYear].Nodes.Add(childNode); } #endregion 根據學年度分類 // 針對學年度排序 #region 針對學年度排序 List <string> sortedKey = itemNodes.Keys.ToList <string>(); sortedKey.Sort(delegate(string key1, string key2) { if (key1 == "未分類") { return(1); } if (key2 == "未分類") { return(-1); } string sort1 = key1.PadLeft(10, '0'); string sort2 = key2.PadLeft(10, '0'); return(sort2.CompareTo(sort1)); }); #endregion 針對學年度排序 // 把結果填入畫面 #region 把結果填入畫面 advTree1.BeginUpdate(); advTree1.Nodes.Clear(); foreach (string key in sortedKey) { itemNodes[key].Nodes.Sort(); advTree1.Nodes.Add(itemNodes[key]); } if (_AdvTreeExpandStatus.Count == 0) { if (advTree1.Nodes.Count > 0) { advTree1.Nodes[0].Expand(); } } advTree1.EndUpdate(); #endregion 把結果填入畫面 if (_SelectItem != null) { advTree1.SelectedNode = _SelectItem; } }