private void SetListView(ListView lv) { if (list_paths.InvokeRequired) { SetListViewCallBack d = new SetListViewCallBack(SetListView); Invoke(d, new object[] { lv }); } else { foreach (ListViewItem item in lv.Items) { lv.Items.Remove(item); list_paths.Items.Add(item); } list_paths.Update(); } }
public void refreshListView(List <Lesson> list) { if (this.InvokeRequired) { SetListViewCallBack cb = new SetListViewCallBack(refreshListView); this.Invoke(cb, new object[] { list }); } else { lessonsTable.Clear(); listView1.Items.Clear(); listBox1.Items.Clear(); lessonBak = list; Hashtable hash = new Hashtable(); Hashtable codeHash = new Hashtable(); foreach (Lesson l in list) { listView1.Items.Add(new ListViewItem(new String[] { "否", l.Id.ToString(), l.Semester, l.DetailCode, l.Name, l.Credit.ToString(), l.ScoreString })); if (!hash.ContainsKey(l.Semester)) { hash.Add(l.Semester, null); } if (!lessonsTable.ContainsKey(l.Id + "")) { lessonsTable.Add(l.Id + "", l); } String temp = null; if ((temp = getEnglishCode(l.Code)) != null) { if (!codeHash.Contains(temp)) { codeHash.Add(temp, 1); } else { codeHash[temp] = (int)codeHash[temp] + 1; } } } listView1.AutoResizeColumn(0, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(1, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(2, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(3, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(4, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(5, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(6, ColumnHeaderAutoResizeStyle.HeaderSize); ArrayList semestersList = new ArrayList(hash.Keys); semestersList.Sort(); listBox1.Items.AddRange(semestersList.ToArray()); List <String> codeList = new List <string>(); IDictionaryEnumerator e = codeHash.GetEnumerator(); int maxCount = 0; String maxCountCode = ""; while (e.MoveNext()) { codeList.Add((String)e.Key); if (maxCount <= (int)e.Value) { maxCountCode = (String)e.Key; maxCount = (int)e.Value; } } codeList.Sort(); comboBox1.Items.AddRange(codeList.ToArray()); if (!string.IsNullOrEmpty(maxCountCode)) { comboBox1.Text = maxCountCode; } label10.Text = GpaInfo.Name; label11.Text = GpaInfo.Major; label12.Text = GpaInfo.Gpa; label13.Text = GpaInfo.TotalCredit; groupBox4.Enabled = groupBox3.Enabled = groupBox2.Enabled = groupBox1.Enabled = listView1.Enabled = true; } }
public void refreshListView(List<Lesson> list) { if (this.InvokeRequired) { SetListViewCallBack cb = new SetListViewCallBack(refreshListView); this.Invoke(cb, new object[] { list }); } else { lessonsTable.Clear(); listView1.Items.Clear(); listBox1.Items.Clear(); lessonBak = list; Hashtable hash = new Hashtable(); Hashtable codeHash = new Hashtable(); foreach (Lesson l in list) { listView1.Items.Add(new ListViewItem(new String[] { "否", l.Id.ToString() , l.Semester, l.DetailCode, l.Name, l.Credit.ToString(), l.ScoreString })); if (!hash.ContainsKey(l.Semester)) { hash.Add(l.Semester, null); } if (!lessonsTable.ContainsKey(l.Id + "")) { lessonsTable.Add(l.Id + "", l); } String temp = null; if ((temp = getEnglishCode(l.Code)) != null) { if (!codeHash.Contains(temp)) { codeHash.Add(temp, 1); } else { codeHash[temp] = (int)codeHash[temp] + 1; } } } listView1.AutoResizeColumn(0, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(1, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(2, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(3, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(4, ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumn(5, ColumnHeaderAutoResizeStyle.HeaderSize); listView1.AutoResizeColumn(6, ColumnHeaderAutoResizeStyle.HeaderSize); ArrayList semestersList = new ArrayList(hash.Keys); semestersList.Sort(); listBox1.Items.AddRange(semestersList.ToArray()); List<String> codeList = new List<string>(); IDictionaryEnumerator e = codeHash.GetEnumerator(); int maxCount = 0; String maxCountCode = ""; while (e.MoveNext()) { codeList.Add((String)e.Key); if (maxCount <= (int)e.Value) { maxCountCode = (String)e.Key; maxCount = (int)e.Value; } } codeList.Sort(); comboBox1.Items.AddRange(codeList.ToArray()); if (!string.IsNullOrEmpty(maxCountCode)) { comboBox1.Text = maxCountCode; } label10.Text = GpaInfo.Name; label11.Text = GpaInfo.Major; label12.Text = GpaInfo.Gpa; label13.Text = GpaInfo.TotalCredit; groupBox4.Enabled = groupBox3.Enabled = groupBox2.Enabled = groupBox1.Enabled = listView1.Enabled = true; } }