C# WinForm 中Console 重定向输出到ListBox控件中显示


 1  public  class TextBoxWriter : System.IO.TextWriter
 2     {
 3         ListBox lstBox;
 4          delegate  void VoidAction();
 5 
 6          public TextBoxWriter(ListBox box)
 7         {
 8             lstBox = box;
 9         }
10 
11          public  override  void Write( string value)
12         {
13             VoidAction action =  delegate
14             {
15                 lstBox.Items.Insert( 0string.Format( " [{0:HH:mm:ss}]{1} ", DateTime.Now, value));
16             };
17             lstBox.BeginInvoke(action);
18         }
19 
20          public  override  void WriteLine( string value)
21         {
22             VoidAction action =  delegate
23             {
24                 lstBox.Items.Insert( 0string.Format( " [{0:HH:mm:ss}]{1} ", DateTime.Now, value));
25             };
26             lstBox.BeginInvoke(action);
27         }
28 
29          public  override System.Text.Encoding Encoding
30         {
31              get {  return System.Text.Encoding.UTF8; }
32         }
33     }    

 

   void frmMain_Load( object sender, EventArgs e)
        {
            Console.SetOut( new TextBoxWriter(Instances.ucLog.LogBox));
        }

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM