C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
ListBox の使い方
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
[トピック内 5 記事 (1 - 5 表示)] <<
0
>>
■103431
/ inTopicNo.1)
ListBox の使い方
▼
■
□投稿者/
星は昴
(1回)-(2024/11/14(Thu) 14:18:57)
分類:[C#]
ListBox について
https://dobon.net/vb/dotnet/control/lbselectitem.html
を見ているのですが、もっと基本的なことがわかりません。
ListBox に表示されている項目のテキストを取り出すにはどうしたらいいのですか。まったくの感で(笑)
for (int i = 0; ListBox.Items.Count - 1; i++)
string fName = ListBox.Items[i];
とやりましたが、全然だめです。
また、プロパティの表示にはListBoxにはTextプロパティは見当たらないのですが
string fName = ListBox.Text;
がエラーにならないのはなぜですか?
引用返信
編集キー/
編集
■103432
/ inTopicNo.2)
Re[1]: ListBox の使い方
▲
▼
■
□投稿者/ kiku
(445回)-(2024/11/14(Thu) 14:52:15)
2024/11/14(Thu) 14:56:22 編集(投稿者)
■
No103431
(星は昴 さん) に返信
> また、プロパティの表示にはListBoxにはTextプロパティは見当たらないのですが
> string fName = ListBox.Text;
> がエラーにならないのはなぜですか?
上記の件は、見ているサイトに説明が記述されています。
読み飛ばさずに、一通り読んで、サンプルも提示されているので
動作させてみることをお勧めます。
検証に利用したソースを提示すると
回答者は回答しやすくなるので
ピンポイントで原因がわかるかもしれません。
回答者が回答しやすいように配慮した方が良いと思います。
引用返信
編集キー/
編集
■103433
/ inTopicNo.3)
Re[1]: ListBox の使い方
▲
▼
■
□投稿者/ WebSurfer
(2933回)-(2024/11/14(Thu) 15:31:34)
■
No103431
(星は昴 さん) に返信
> ListBox について
ListBox というのは、ASP.NET Web Forms, WinForms, WPF のいずれにもあるのですが、
何の ListBox ですか?
(dobon の記事を見れば分かるというのはナシでお願いします)
あと、ターゲットフレームワークは何か、Visual Studio のバージョンは何かも書いて
ください。
引用返信
編集キー/
編集
■103434
/ inTopicNo.4)
Re[1]: ListBox の使い方
▲
▼
■
□投稿者/ 魔界の仮面弁士
(3812回)-(2024/11/14(Thu) 15:36:07)
2024/11/15(Fri) 12:15:36 編集(投稿者)
■
No103431
(星は昴 さん) に返信
> ListBox に表示されている項目のテキストを取り出すにはどうしたらいいのですか。まったくの感で(笑)
> for (int i = 0; ListBox.Items.Count - 1; i++)
> string fName = ListBox.Items[i];
DisplayMember プロパティが未設定なら
= listBox1.Items[i].ToString()
でも良いのですけれど、バインド時にも対応できるよう汎用的に書くなら、
= listBox1.GetItemText(listBox1.Items[i]);
ですね。
全件まとめて取り出すならこんな感じ。
string[] names = listBox1.Items.OfType<object>().Select(o => listBox1.GetItemText(o)).ToArray();
また、「選択されている項目」については、listBox1.SelectedIndex で
選択されている先頭項目の番号(0〜)が返されます。未選択時は -1 です。
複数選択モード(SelectionMode プロパティで設定)が指定されている場合は、
listBox1.SelectedIndex の代わりに listBox1.SelectedIndices
listBox1.SelectedItem の代わりに listBox1.SelectedItems
という複数形プロパティを使います。(SelectedValue の複数形はありません)
現在選択されている項目のテキストならば、単一選択であれば
listBox1.GetText(listBox1.SelectedItem) ですが、ほぼ同じものが
listBox1.Text でも得られます。複数選択の時には、
上記の複数形プロパティをループ処理して GetText メソッドで取り出しましょう。
> string fName = ListBox.Text;
> がエラーにならないのはなぜですか?
ListBox は Control クラスを継承しており、
Text プロパティは継承元の Control クラスで定義されたメンバーです。
継承先のコントロールによって、Text が返す情報は異なりますが、
どんなコントロールであっても Text というプロパティは存在しますので、
それ自体がエラーになることはありません。
ただし一部のコントロールでは、Text プロパティが不可視設定されている
場合もあります。たとえば NumericUpDown や DataGridView などです。
これらでも Text プロパティを呼び出せはしますが、使うべきではありません。
引用返信
編集キー/
編集
■103435
/ inTopicNo.5)
Re[2]: ListBox の使い方
▲
▼
■
□投稿者/
星は昴
(2回)-(2024/11/14(Thu) 17:41:39)
■
No103434
(魔界の仮面弁士 さん) に返信
ありがとうございました。
解決済み
引用返信
編集キー/
編集
このトピックをツリーで一括表示
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
入力内容にタグは利用できません。
他人を中傷する記事は管理者の判断で予告無く削除されます。
半角カナは使用しないでください。文字化けの原因になります。
名前、コメントは必須記入項目です。記入漏れはエラーになります。
入力内容の一部は、次回投稿時の手間を省くためブラウザに記録されます。
URL は自動的にリンクされます。
記事中に No*** のように書くとその記事にリンクされます(No は半角英字/*** は半角数字)。
名前
(*必須)
E-Mail (任意)
Web サイト (任意)
投稿モード
通常モード
図表モード (ソースコードを貼る場合はこちらを使用)
本文
(質問の場合は、開発環境・使用言語のバージョンなどを最初に書いてください)
■No103433 (WebSurfer さん) に返信 > ■No103431 (星は昴 さん) に返信 >>ListBox について > > ListBox というのは、ASP.NET Web Forms, WinForms, WPF のいずれにもあるのですが、 > 何の ListBox ですか? > > (dobon の記事を見れば分かるというのはナシでお願いします) > > あと、ターゲットフレームワークは何か、Visual Studio のバージョンは何かも書いて > ください。
編集キー
自分の投稿を編集する時に必要です
(半角8文字以内)
解決済み
/
解決したらチェックしておきましょう。
プレビュー/
管理者用
-
Child Tree
-