0

こんにちは、私は次のコードを持っています-

        richTextBox1.Text = richTextBox1.Text + action + "ok: " + ok.ToString();
        richTextBox1.Text = richTextBox1.Text + "err: " + err.ToString();
        richTextBox1.Text = richTextBox1.Text + "\r\n";
        textBox1.Text = textBox1.Text;

結果は次のようになります -

OK:7エラー:0

でも私はしたい-

わかりました:7

エラー:0

間隔を空けて、見栄えを良くするにはどうすればよいですか?

4

3 に答える 3

3

さらに 2 行追加できます。

richTextBox1.Text += Environment.NewLine;
richTextBox1.Text += Environment.NewLine;

「ok」と「err」の間-出力の2行の間に空白行が必要だと仮定します。ただし、このように文字列を連結して非効率的に出力を作成するにstring.Formatは、 またはを使用する必要があります。StringBuilder

最終的なものも必要ありません:

textBox1.Text = textBox1.Text;

これは、テキスト ボックスの内容を元の状態に戻すだけで、何もしないためです。

于 2011-04-29T12:40:12.753 に答える
1

あなたはすでに答えを得ていますが、それは間違った場所にあるだけです! \r\n重要なのは、キャリッジ リターンと改行を挿入するエスケープ シーケンスを使用することです。

また、このコードを複数の行に分割する理由はありません。そうすることで、パフォーマンスが低下することになります。すべての文字列連結を一度に行う方がよいでしょう。(ここでは、クラスの使用を正当化するのに十分な連結を行っていませんがStringBuilder、.NET では文字列が不変であり、それに応じてコードを記述することに注意してください。)

次のようにコードを書き直してみてください。

textBox1.Text = textBox1.Text + action + "ok: " + ok.ToString(); + "\r\n" +
                "err: " + err.ToString(); + "\r\n";

textBox1.Textの値をそれ自体に設定するだけなので、コードの最後の行を完全に削除することもできます。これはノーオペレーションです。つまり、何もしません。

于 2011-04-29T12:40:42.130 に答える
1

1 つ目は、これらすべてを 1 つのステートメントで実行できること、2 つ目は代わりに += 演算子を使用できること、3 つ目は最後のステートメントが何をしているのか?! 必要ありません。4 番目に、必要な各パーツの後に「\n」を追加します。配置する場所に制限はなく、「\r」は必要ありません。

于 2011-04-29T12:44:35.263 に答える