private void GRStRds_Changed(object sender, EventArgs e) { GRStationLastRealDatasCollection snd = sender as GRStationLastRealDatasCollection; if (snd != null) { GRStationLastRealData strd = snd.ChangedSTRD; if (strd != null) { ListViewItem lvi = FindLvi(strd.GRStation.StationName); if (lvi != null) { if (strd.GRRealData != null) { string [] ss = GetSubItemTexts(strd.GRStation.StationName, strd.GRRealData); string text = lvi.Text; Color clr = lvi.BackColor; lvi.SubItems.Clear(); lvi.Text = text; lvi.BackColor = clr; lvi.SubItems.AddRange(ss); } } } } // RefreshListView (); }
/// <summary> /// /// </summary> private void RefreshListView() { this.lvGrStRds.Items.Clear(); IComparer comparer = this.lvGrStRds.ListViewItemSorter; this.lvGrStRds.ListViewItemSorter = null; GRStationLastRealDatasCollection grstRds = Singles.S.GRStRds; if (grstRds == null) { return; } // TODO: ?? Add remoteIP and serverIP // foreach (GRStationLastRealData grStRd in grstRds) { // TODO: 2007-10-23 added team column // string team = grStRd.GRStation.Team; if (team == null) { team = string.Empty; } // ListViewItem lvi = lvGrStRds.Items.Add( grStRd.GRStation.StationName ); ListViewItem lvi = lvGrStRds.Items.Add(team); if (grStRd.GRStation.ServerIP == XGConfig.Default.ServerIP) { lvi.BackColor = Color.FromArgb(208, 255, 208); } GRRealData rd = grStRd.GRRealData; if (rd != null) { string [] subItemTexts = GetSubItemTexts(grStRd.GRStation.StationName, grStRd.GRRealData); lvi.SubItems.AddRange(subItemTexts); } else { string[] subItemTexts = new string[] { grStRd.GRStation.StationName }; lvi.SubItems.AddRange(subItemTexts); } } this.lvGrStRds.ListViewItemSorter = comparer; }
/// <summary> /// /// </summary> /// <param name="stName"></param> /// <returns></returns> private GRRealData GetLastestGRRD(string stName) { GRStationLastRealDatasCollection grStRds = Singles.S.GRStRds; if (grStRds != null) { foreach (GRStationLastRealData l in grStRds) { if (l.GRStation.StationName == stName) { return(l.GRRealData); } } } return(null); }