Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#输出不会以表单形式进入文本框_C# - Fatal编程技术网

C#输出不会以表单形式进入文本框

C#输出不会以表单形式进入文本框,c#,C#,我不明白为什么say()方法无法写入我表单中名为“ConsoleBox”的文本框。请帮忙 旧的: 公共部分类Form1:Form { 公共表格1() { 初始化组件(); } public void say(string h) { System.Console.WriteLine(); ConsoleBox.AppendText(h); } public void richTextBox_ChangedText(object s

我不明白为什么
say()
方法无法写入我表单中名为“ConsoleBox”的文本框。请帮忙

旧的: 公共部分类Form1:Form { 公共表格1() { 初始化组件();
}

    public void say(string h)
    {
        System.Console.WriteLine();
        ConsoleBox.AppendText(h);
    }


    public void richTextBox_ChangedText(object sender, EventArgs e)
    {                        
        say("Online ...");
        say("What is you Name?");
        string Name = System.Console.ReadLine();
        say("It is truly a pleasure to meet you, Sir {0}" + Name);
    }
}
应该是这样吗? 新的:


您的代码中并没有任何错误。文本框的大小似乎非常小,您无法看到所有文本。请尝试将其变大

两项改进

您应该在测试中注释掉或删除包含
System.Console
的行。我认为在VS IDE的调试模式下运行控制台窗口时,您将看不到它。这些行不起任何作用。即使
System.Console.ReadLine
也无法读取任何内容

首先,尝试仅在以下两行中运行:

say("Online ...");
say("What is you Name?");
以下代码适用于我:

public void say(string h)
{
    System.Console.WriteLine();
    textBox1.AppendText(h);
}

private void richTextBox1_TextChanged(object sender, EventArgs e)
{
    say("Online ...");
    say("What is you Name?");
}

很抱歉,关于“System.Console”,我的教程到目前为止没有告诉我如何不使用它。我尝试了“WriteLine();”在say方法中,您可以告诉我如何重新表述它吗?请您已经完成了编写操作,将文本添加到文本框中,而不是写入控制台。您可以添加另一个
TextBox
并从该文本框中获取
Name
。它将允许您删除
System.console.ReadLine()
行。抱歉,请保留RitchTextBox上的on
textchanged
事件。它现在应该可以工作了,因为你编辑的代码对我有效。如果它不起作用,请告诉我你使用的是哪个版本的VS。好的,我会在找到恢复解决方案XD后尝试。我把它弄糟了一点,好了,所以它会重复发送输出(我该如何修复它),但只有在我按下文本框中的任何键之后(我该如何修复它?)。顺便说一句,将名称更改为“richTextBox”给了我一个错误,所以我将其保留为“ConsoleBox”,因为这是它的名称
public void say(string h)
{
    System.Console.WriteLine();
    textBox1.AppendText(h);
}

private void richTextBox1_TextChanged(object sender, EventArgs e)
{
    say("Online ...");
    say("What is you Name?");
}