NEWS

[C#] Lấy dữ liệu từ Console Write hiển thị lên textbox Winform

[C#] Lấy dữ liệu từ Console Write hiển thị lên textbox Winform
Đăng bởi: Thảo Meo - Lượt xem: 9071 09:21:12, 07/01/2021DEVEXPRESS   In bài viết

Xin chào các bạn, bài viết hôm nay mình sẽ tiếp tục hướng dẫn các bạn lấy dữ liệu từ Console.Write hiển thị lên Textbox Winform C#.

Trong lập trình ứng dụng Winform, các bạn thường sử dụng Console.Write để xuất dữ liệu ra để chúng ta test (log).

Và mong muốn là mình muốn hiển thị log đó từ Console.Write() vào TextBox Winform.

console_direction

Đầu tiên các bạn tạo một class TextBoxStreamWriter.cs:

using System;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace ConsoleRedirection
{
    public class TextBoxStreamWriter : TextWriter
    {
        TextBox _output = null;

        public TextBoxStreamWriter(TextBox output)
        {
            _output = output;
        }

        public override void Write(char value)
        {
            base.Write(value);
            _output.AppendText(value.ToString());

        }

        public override Encoding Encoding
        {
            get { return System.Text.Encoding.UTF8; }
        }
    }
}

Và trong FormConsole.cs các bạn sử dụng như sau:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace ConsoleRedirection
{
    public partial class FormConsole : Form
    {
        TextWriter _writer = null;

        public FormConsole()
        {
            InitializeComponent();
        }

        private void FormConsole_Load(object sender, EventArgs e)
        {
            _writer = new TextBoxStreamWriter(txtConsole);
            Console.SetOut(_writer);

            Console.WriteLine("Now redirecting output to the text box");
        }

        private void txtSayHello_Click(object sender, EventArgs e)
        {
            Console.WriteLine("Hello world");
        }
    }
}

và bây giờ bất kỳ ở Form nào xuất Console.Write thì ở FormConsole này đều hiển thị dữ liệu đó lên textbox.

Thanks for watching!

DOWNLOAD SOURCE

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[C#] Lấy dữ liệu từ Console Write hiển thị lên textbox Winform
Đăng bởi: Thảo Meo - Lượt xem: 9071 09:21:12, 07/01/2021DEVEXPRESS   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.