我把它写成一个简单的日志到屏幕的东西,以通知用户后台发生的事情或确认各种操作。
在表单上添加一个RichTextBox,这里我称之为“rtbLog”
然后拨打以下电话并添加您的消息和您想要的任何可选格式。比如:
DoWriteToLog("Hey, welcome!", true, Color.Green)
public void DoWriteToLog(string strLogMessage, bool blnHighlighted = false, Color myFontColor = default(Color), bool blnNewLine = true)
{
string dtStamp = "[" + DateTime.Now.ToString("HH:mm:ss") + "] ";
if (blnNewLine)
strLogMessage = dtStamp + strLogMessage + Environment.NewLine;
if (blnHighlighted)
{
rtbLog.SelectionColor = myFontColor; // Optional font color passed to method
if (strLogMessage.ToLower().Contains("help")) // IF there is 'help' in the message, highlight it blue
rtbLog.SelectionBackColor = Color.LightBlue;
rtbLog.SelectionFont = new Font("Cambria", 10F, FontStyle.Bold, GraphicsUnit.Point);
rtbLog.AppendText(strLogMessage);
}
else
rtbLog.AppendText(strLogMessage);
rtbLog.ScrollToCaret();
}
上面的 DoWriteToLog 语句将写“嘿,欢迎!”到粗体绿色字体的 RichTextBox。它还会为输入的每一行添加一个时间戳,但您可以通过关闭 blnNewLine 来避免这种情况。当然它是特定于我的使用,但您可以修改它以适合您的使用。
我还有一个帮助“检测器”,因此如果我在屏幕上显示帮助消息,它会以特定颜色突出显示它,您可以根据需要评论/删除这两行。
注意唯一需要的参数,当然是消息。这样,由于我经常使用它,因此我不必每次都添加所有参数,从而节省大量输入:-)