我还是被卡住了。。。我正在使用ASP.NET Web窗体。
我有一个文本框:
<p><asp:TextBox runat="server" TextMode="Multiline" ReadOnly="true" ID="txtBoxAlgo" rows="50" width="878px"></asp:TextBox></p>
我只能在这个文本框中添加文本一次:
txtBoxAlgo.Text = ("My first line of text" + Environment.NewLine);
现在我的问题是,如果我再次尝试将文本添加到文本框中,则不会发生任何事情。例如:
txtBoxAlgo.Text = ("First try! It works!");
txtBoxAlgo.Text = ("Nothing, not working :(");
现在,我将介绍一个我为C#控制台和C#Windows窗体制作的简单程序。我正在试用ASP.NET Web窗体。
我使用了Console.WriteLine(");在我的控制台应用程序中。我能为网络表单做类似事情的唯一方法是为我想向屏幕输出文本的每个实例制作标签和文本框+多行,在这一点上,不值得为Console.WriteLine.的每个实例做这么多努力
我尝试了Response.Write,但首先这个显示在网页的左上角,而且都没有格式化。
我的想法用完了,在搜索时找不到任何东西。你能在文本框中添加或附加文本吗?我们可以使用Response.Write以某种方式格式化所有内容,以便用户可以阅读吗?
将额外文本附加到文本框时,请使用+=
而不是=
txtBoxAlgo.Text = "My first line of text" + Environment.NewLine;
txtBoxAlgo.Text += "First try! It works!";
txtBoxAlgo.Text += "Should work.";
每次在为Textbox分配值时使用=
,都只是替换上一个值,这就是为什么只有最后一个字符串可见的原因。
或者使用StringBuilder
:
StringBuilder sb = new StringBuilder();
sb.AppendLine("First Line");
sb.AppendLine("Second Line");
txtBoxAlgo.Text = sb.ToString();