Консольное приложение внутри WinForm - C#

Узнай цену своей работы

Формулировка задачи:

Итак. У меня есть форма, на которой есть одна кнопка button1. Требуется: Пользователь нажимает на кнопку - появляется такое черное окно как в ConsoleApplication - там с помощью WriteLine выводится какое-нибудь сообщение. Если пользователь введет "1" - то консоль закроется, в ином случае - ничего происходить не будет.

Решение задачи: «Консольное приложение внутри WinForm»

textual
Листинг программы
  1. using System;
  2. using System.IO;
  3. using System.Text;
  4. using System.Windows.Forms;
  5.  
  6. namespace ConsoleRedirection
  7. {
  8.     public partial class FormConsole : Form
  9.     {
  10.         TextWriter _writer = null;
  11.  
  12.         public FormConsole()
  13.         {
  14.             InitializeComponent();
  15.         }
  16.  
  17.         private void FormConsole_Load(object sender, EventArgs e)
  18.         {
  19.             _writer = new TextBoxStreamWriter(textbox1);
  20.             Console.SetOut(_writer);            
  21.         }
  22.  
  23.         private void button1_Click(object sender, EventArgs e)
  24.         {
  25.             Console.WriteLine("Hello world");
  26.         }
  27.     }
  28.    
  29.     public class TextBoxStreamWriter : TextWriter
  30.     {
  31.         TextBox _output = null;
  32.  
  33.         public TextBoxStreamWriter(TextBox output)
  34.         {
  35.             _output = output;
  36.         }
  37.  
  38.         public override void Write(char value)
  39.         {
  40.             base.Write(value);
  41.             _output.AppendText(value.ToString());
  42.         }
  43.     }
  44. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы