#region 日志記錄、支持其他線程訪問 public delegate void LogAppendDelegate(Color color, string text); public void LogAppendMethod(Color color, string text) { if (!richTextBoxOutPut.ReadOnly) richTextBoxOutPut.ReadOnly = true; this.richTextBoxOutPut.Select(this.richTextBoxOutPut.Text.Length, 0); this.richTextBoxOutPut.Focus(); richTextBoxOutPut.SelectionColor = color; richTextBoxOutPut.AppendText(text); } public void LogError(string text) { LogAppendDelegate la = new LogAppendDelegate(LogAppendMethod); richTextBoxOutPut.Invoke(la, Color.Red, DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text); } public void LogWarning(string text) { LogAppendDelegate la = new LogAppendDelegate(LogAppendMethod); richTextBoxOutPut.Invoke(la, Color.Blue, DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text); } public void LogMessage(string text) { LogAppendDelegate la = new LogAppendDelegate(LogAppendMethod); richTextBoxOutPut.Invoke(la, Color.Green, DateTime.Now.ToString("[yyyy-MM-dd HH:mm:ss] ") + text); } #endregion