/// <summary> /// Исправить выделение цветом при записи в начало файла! /// </summary> /// <param name="msg"></param> /// <param name="type"></param> /// <param name="inStart"></param> public void StatusMessage(string msg, MessagesTypes type, bool inStart) { try { BeginInvoke(new Action(() => //из потоков { if (textBoxMessages == null || textBoxMessages.IsDisposed) { return; } if (inStart) { textBoxMessages.Select(0, 0); } System.Drawing.FontStyle newFontStyle; string symbol = ""; switch (type) { case MessagesTypes.Info: symbol = ""; break; case MessagesTypes.Attention: symbol = "! "; //Важная инфа к вниманию newFontStyle = FontStyle.Bold; textBoxMessages.SelectionFont = new Font( textBoxMessages.Font.FontFamily, textBoxMessages.Font.Size, newFontStyle ); textBoxMessages.SelectionColor = Color.Green; textBoxMessages.SelectedText = symbol; break; case MessagesTypes.Warning: symbol = "!! "; //Предупреждение newFontStyle = FontStyle.Bold; textBoxMessages.SelectionFont = new Font( textBoxMessages.Font.FontFamily, textBoxMessages.Font.Size, newFontStyle ); textBoxMessages.SelectionColor = Color.LightPink; textBoxMessages.SelectedText = symbol; break; case MessagesTypes.Error: symbol = "!!! "; // Ошибка newFontStyle = FontStyle.Bold; textBoxMessages.SelectionFont = new Font( textBoxMessages.Font.FontFamily, textBoxMessages.Font.Size, newFontStyle ); textBoxMessages.SelectionColor = Color.Red; textBoxMessages.SelectedText = symbol; if (IsCollapsed) //если свернуто то подсветим { panelTop.BackColor = Color.Red; } break; } newFontStyle = FontStyle.Regular; textBoxMessages.SelectionFont = new Font( textBoxMessages.Font.FontFamily, textBoxMessages.Font.Size, newFontStyle ); if (type != MessagesTypes.Normal) //Для нормального не отображаем время и не выделяем { string time = DateTime.Now.ToString(); textBoxMessages.SelectionColor = Color.Blue; //выбираем цвет отображения textBoxMessages.SelectedText = time + ": "; //задаем выделения текста и выводим его } textBoxMessages.SelectionColor = Color.Black; textBoxMessages.SelectedText = (msg + Environment.NewLine); } )); } catch { } }
/// <summary> /// Выводим сообщение в окно лога. Последнее в начало /// </summary> /// <param name="msg">сообщение</param> /// <param name="type">Тип сообщения: Важно,Ошибка,Предупреждение</param> public void StatusMessage(string msg, MessagesTypes type) { StatusMessage(msg, type, true); }