public void Init(OutfitMembersTracker tracker, string sessionName) { handler = new EventRecordsHandler(tracker.Members); // register EventRecordsHandler to the Tracker tracker.AddHandler(handler); this.sessionName = sessionName; }
public TrackerWindow(EventRecordsHandler handler, Action <string> saveStatsCb, Action <string> saveDetailsCb, string sessionName) { this.sessionName = sessionName; SaveStatsCallback = saveStatsCb; SaveDetailsCallback = saveDetailsCb; Title = $"PS2 Tracker Session Summary ('{sessionName}')"; InitializeComponent(); // only show players that were online during tracking Players = handler.Players.Where(pair => pair.Value.OnlineTime.Ticks > 0).ToDictionary(pair => pair.Key, pair => pair.Value); DataContext = this; // GetDefaultView used for setting up filter returns null when ItemsSource is setup inside xaml until the xaml is loaded (OnLoaded can be used) // I want to setup fitler here so I assign itemssource here listView.ItemsSource = Players; view = (CollectionView)CollectionViewSource.GetDefaultView(listView.ItemsSource); view.SortDescriptions.Add(new SortDescription("Value.CharacterName.InnerString", ListSortDirection.Ascending)); }