C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: リストボックスについて変に表示されて困ってます


(過去ログ 34 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■16881 / inTopicNo.1)  リストボックスについて変に表示されて困ってます
  
□投稿者/ mari (13回)-(2008/04/12(Sat) 12:00:22)

分類:[C#] 

取得したすべてのプロセス名をリストボックスに表示させてるのですが、
A
AB
ABC
ABCD
と表示されてしまいます。
どうやったら
A
B
C
D
と表示させることができるんですか?教えてください。

private void button1_Click(object sender, EventArgs e)
{
System.Diagnostics.Process[] myProcesses = System.Diagnostics.Process.GetProcesses();
string stPrompt = string.Empty;
foreach (System.Diagnostics.Process myProcess in myProcesses)
{
stPrompt += myProcess.ProcessName + System.Environment.NewLine;
{
listBox1.Items.Add(stPrompt);
}
}
}
引用返信 編集キー/
■16882 / inTopicNo.2)  Re[1]: リストボックスについて変に表示されて困ってます
□投稿者/ mari (14回)-(2008/04/12(Sat) 12:04:21)
テキストボックスやリッチテキストボックスやメッセージボックスでは
正常に
A
B
C
D
と表示されます。
引用返信 編集キー/
■16883 / inTopicNo.3)  Re[2]: リストボックスについて変に表示されて困ってます
□投稿者/ 特攻隊長まるるう (123回)-(2008/04/12(Sat) 12:32:17)
No16882 (mari さん) に返信
System.Environment.NewLine は一般に改行コードと呼ばれているものです。
改行コードの実体は、実は特別な文字なのです。

つまり
>テキストボックスやリッチテキストボックスやメッセージボックスでは
人間には複数行の文字列が別々に管理されているように見えますが、
『A[改行]B[改行]C[改行]D[改行]』
という1行の文字しか覚えていません。

それを表示の時だけ [改行]⇒次の行へ表示 と変換しているわけです。

ところがリストボックスは1行毎に別の入れ物が用意されます。
1行毎にその行に表示させたい文字のみ Items.Add し、それを
繰り返してください。

foreach (System.Diagnostics.Process myProcess in myProcesses)
{
  listBox1.Items.Add(myProcess.ProcessName);
}

引用返信 編集キー/
■16884 / inTopicNo.4)  Re[3]: リストボックスについて変に表示されて困ってます
□投稿者/ mari (15回)-(2008/04/12(Sat) 12:48:42)
No16883 (特攻隊長まるるう さん) に返信
> ■No16882 (mari さん) に返信
> System.Environment.NewLine は一般に改行コードと呼ばれているものです。
> 改行コードの実体は、実は特別な文字なのです。
>
> つまり
> >テキストボックスやリッチテキストボックスやメッセージボックスでは
> 人間には複数行の文字列が別々に管理されているように見えますが、
> 『A[改行]B[改行]C[改行]D[改行]』
> という1行の文字しか覚えていません。
>
> それを表示の時だけ [改行]⇒次の行へ表示 と変換しているわけです。
>
> ところがリストボックスは1行毎に別の入れ物が用意されます。
> 1行毎にその行に表示させたい文字のみ Items.Add し、それを
> 繰り返してください。
>
> foreach (System.Diagnostics.Process myProcess in myProcesses)
> {
>   listBox1.Items.Add(myProcess.ProcessName);
> }

なるほどわかりました。
listBox1.Items.Add(myProcess.ProcessName);listBox1.Items.Add(myProcess.ID);とわけてやって正常に表示されるようになりました。
どうもありがとうございます。

>
解決済み
引用返信 編集キー/
■16885 / inTopicNo.5)  Re[4]: リストボックスについて変に表示されて困ってます
□投稿者/ mari (16回)-(2008/04/12(Sat) 13:09:25)
listBox1.Items.Add(myProcess.ProcessName + myProcess.ID);
とすることで連結表示にすることができました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -