예제 #1
0
 private void ClearLogToolStripMenuItem_Click(object sender, System.EventArgs e)
 {
     lock (m_UpdateLock)
     {
         LogViewTextBox.Clear();
     }
 }
예제 #2
0
        public void AddLogLine(
            DateTime time,
            string level,
            string logger,
            string message)
        {
            lock (m_UpdateLock)
            {
                LogViewTextBox.SuspendLayout();
                string timeStr = time.ToString("HH:mm:ss");
                try
                {
                    switch (level.ToLower())
                    {
                    case "error":
                        LogViewTextBox.AppendText(string.Format("{0} - [{1}]: {2}", timeStr, logger, message.Trim()), Color.Red);
                        break;

                    case "warn":
                        LogViewTextBox.AppendText(string.Format("{0} - [{1}]: {2}", timeStr, logger, message.Trim()), Color.Yellow);
                        break;

                    default:
                        LogViewTextBox.AppendText(string.Format("{0} - [", timeStr));
                        LogViewTextBox.AppendText(logger, Colors[Math.Abs(logger.ToUpper().GetHashCode()) % Colors.Length]);
                        LogViewTextBox.AppendText(string.Format("]: {0}", message.Trim()));
                        break;
                    }
                }
                catch (Exception e)
                {
                    LogViewTextBox.AppendText("§ " + e.Message);
                }
                LogViewTextBox.AppendText(Environment.NewLine);
                LogViewTextBox.ResumeLayout();
            }
        }