/// <summary> /// Colors then rebuilds the string that is displayed in the RichTextBox. /// </summary> public void ColorDisplayText(CalculatorResultsViewModel calcResultsVM) { DisplayRichTextBox.Document.Blocks.Clear(); var profitPercentage = calcResultsVM.ProfitPercentage; var profitPercentageString = profitPercentage.ToString() + "%"; var displayText = calcResultsVM.DisplayText; string[] splitter = displayText.Split(new string[] { profitPercentageString }, StringSplitOptions.None); if (splitter.Count() == 2) { AppendText(DisplayRichTextBox, splitter[0], Brushes.Black); if (profitPercentage < 0) { AppendText(DisplayRichTextBox, profitPercentageString, (FindResource("NegativeLossBrush") as SolidColorBrush)); } else if (profitPercentage > 0) { AppendText(DisplayRichTextBox, profitPercentageString, (FindResource("PositiveGainBrush") as SolidColorBrush)); } else { AppendText(DisplayRichTextBox, profitPercentageString, Brushes.Black); } AppendText(DisplayRichTextBox, splitter[1], Brushes.Black); DisplayRichTextBox.Document.TextAlignment = TextAlignment.Center; } else { AppendText(DisplayRichTextBox, displayText, Brushes.Black); DisplayRichTextBox.Document.TextAlignment = TextAlignment.Center; } }
private void Instance_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { CalculatorResultsViewModel calcResultsVM = sender as CalculatorResultsViewModel; if (calcResultsVM == null) { return; } if (e.PropertyName == "DisplayText") { ColorDisplayText(calcResultsVM); } }
public Processor(CalculatorResultsViewModel calcResultsVM) { _calcResultsVM = calcResultsVM; }