最初に、TextBoxは複数の行を許可する必要があります。これは、デザイナまたはコードから設定できるテキストボックスコントロールのプロパティです。高さが十分に大きくない場合にスクロールするスクロールバーがあることを確認することができます。
コードからプロパティを設定する場合は、このコードをフォームのLoadイベントで使用します。
textbox1.text = result
あなたがそれをコード化された方法は、私のすべての新しい値は、古い値を上書きします:
' Set the Multiline property to true.
textBox1.Multiline = True
' Add vertical scroll bars to the TextBox control.
textBox1.ScrollBars = ScrollBars.Vertical
' Change the height of the textbox so that it could accomodate the lines
TextBox1.Height = 120
今、あなたのアプローチは、この行の主要な問題を抱えていました。あなたがしたいのは、最初に文字列を作成してから、文字列全体をTextBoxコントロールに送信することです。これは、Console.WriteLineメソッドを使用していた場合は必要ありません。
方法1つの
Dim s as string
s=""
For i As Integer = 1 To 10
s = s & Environment.Newline & i.ToString() 'we use Environment.NewLine to force new line
Next i
textbox1.text = s
方法2
.NETは、我々が以前に行った方法よりも優れた文字列を扱うためのクラスを提供しています。それはあなたのケースでは問題ありませんが、ボリュームが大きい場合には、連結を処理するための効率的な方法であり、および/またはパフォーマンスが
Dim s as new System.Text.StringBuilder() 'Initialize stringbuilder instance
For i As Integer = 1 To 10
s.AppendLine (i.ToString()) 'We use stringbuilder to concat. and inser line feed
Next i
textbox1.text = s.ToString()
注意事項:&を使用して、あなたがダブルスペースを望むなら、あなたは改行を追加する必要があります( )を上記の方法の両方に適用する。
Method2 'textbox1.text = s'これはテキストが文字列であり、stringbuilderではないのでコンパイルされません。それはs.tostringする必要があります...多分タイプo? – Codexer
ご意見ありがとうございます。あなたは正しいです。 – NoChance