You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
869 B
C#

2 years ago
using System.Diagnostics;
namespace Estsh.Client.Common.CostomTraceListener
{
public class ControlTraceListener : TraceListener
{
private Control _control;
private delegate void StringSendDelegate(string msg);
private StringSendDelegate _invokeWrite;
public ControlTraceListener(Control target)
{
_control = target;
_invokeWrite = new StringSendDelegate(SendString);
}
public override void Write(string message)
{
_control.Invoke(_invokeWrite, new object[] { message });
}
public override void WriteLine(string message)
{
_control.Invoke(_invokeWrite, new object[] { message + Environment.NewLine });
}
private void SendString(string msg)
{
_control.Text += msg;
}
}
}