private PracticeResultItem CreateResult() { var practiceResultKeyInfos = this.PracticeKeyInfoViewModels .Select( viewModel => new PracticeResultKeyInfo { ExpectedKey = viewModel.ExpectedKey.Value, KeyInputtedCount = viewModel.KeyInputtedCount.Value, KeyMistakedCount = viewModel.KeyMistakedCount.Value, }) .ToList(); var result = new PracticeResultItem(practiceResultKeyInfos) { OdaiText = this.OdaiText.Value, YomiText = this.YomiText.Value, StartDateTime = this.startDateTime, EndDateTime = DateTime.Now, }; return(result); }
private void SubscribePracticeItemResulted(PracticeResultItem resultItem) { this.CurrentResultContentViewModel?.AddPracticeResultItem(resultItem); this.booleanNotifier.SwitchValueWith(_ => DebugLog.Print($"次のスイッチ")); }
internal void AddPracticeResultItem(PracticeResultItem practiceResultItem) { this.PracticeResultItems.Add(practiceResultItem); }
public void PublishPracticeItemResulted(PracticeResultItem result) { var eh = Interlocked.CompareExchange(ref this.PracticeItemResulted, null, null); eh?.Invoke(result); }