//вывод сообщения private bool MessageOutput(bool separator, string str) { try { //проверка длины поля сообщений if ((ScrollViewer_Message.MainContent as TextBox).LineCount > Properties.Settings.Default.MaxCountMessageLine) { Button_MessageTextBoxClear_Click(new object(), new RoutedEventArgs()); } } catch { } if ((ScrollViewer_Message.MainContent as TextBox).Text != "") { (ScrollViewer_Message.MainContent as TextBox).Text += "\n"; if (separator) { (ScrollViewer_Message.MainContent as TextBox).Text += "\n"; } } (ScrollViewer_Message.MainContent as TextBox).Text += (str); //перевод scrollBar в нижнее положение ScrollViewer_Message.ScrollToEnd(); return(true); }
//вывод сообщения private bool MessageOutput(int separator, string str) { //проверка длины поля сообщений if ((ScrollViewer_Message.MainContent as TextBox).LineCount > Properties.Settings.Default.MaxCountMessageLine) { Button_MessageTextBoxClear_Click(new object(), new RoutedEventArgs()); } //выводить только в случаи наличия сообщения if (str != "") { //является ли текущее сообщение сообщение на Изменение bool thisMessageIsChangeMessage = str.Contains(Properties.Resources.ChangeOption); //если имеются уже выведенные на экран сообщения if ((ScrollViewer_Message.MainContent as TextBox).Text != "") { //если последнее и текущее сообщения не являются сообщениями на Изменение if (!this.LastMessageIsChangeMessage || !thisMessageIsChangeMessage) { //вывод заданного числа enter'оф for (int i = 0; i < separator; i++) { (ScrollViewer_Message.MainContent as TextBox).Text += "\n"; } } //простой переход в следующую строку else { (ScrollViewer_Message.MainContent as TextBox).Text += "\n"; } } //вывод сообщения (ScrollViewer_Message.MainContent as TextBox).Text += (str); //перевод scrollBar в нижнее положение ScrollViewer_Message.ScrollToEnd(); this.LastMessageIsChangeMessage = thisMessageIsChangeMessage; } return(true); }