[C#] リストボックスの項目編集

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
オカピーα
記事: 120
登録日時: 13年前

[C#] リストボックスの項目編集

#1

投稿記事 by オカピーα » 12年前

こんにちは、またもやC#でごめんなさい。
現在リストボックスを使っていますが、項目が編集できません・・・
指定の項目の文字列を変更したいときはどうしたらいいのでしょう?
いろいろプロパティに放り込んでみましたが無反応で・・・
少し調べたところ、以下の方法があるそうです。

追加
 ↓
削除
 ↓
選択

しかしあまりにまどろっこしくて・・・いい方法はないでしょうか?
C,C++,C#,これらを極めることを「3C政策」と言う

アバター
バグ
記事: 130
登録日時: 14年前
住所: 愛媛県
連絡を取る:

Re: [C#] リストボックスの項目編集

#2

投稿記事 by バグ » 12年前

そんなにまどろっこしいかな?
私がオカピーαさんの質問を誤読していなければ、下記の3行でいけると思います(^-^)

コード:

// 選択項目のインデックスを取得する
int id = listBox1.SelectedIndex;

// 何も選択されてない場合は何もしない
if (id == -1) return;

// 選択項目のアイテムを新しい文字列に変更する
listBox1.Items[id] = string.Format("Test {0}", id); // 変更したい文字列をここに書く

YuO
記事: 947
登録日時: 14年前
住所: 東京都世田谷区

Re: [C#] リストボックスの項目編集

#3

投稿記事 by YuO » 12年前

BindingList<T>をListBoxのデータソースに入れている場合は,Tのプロパティを変更しても,そのままではListBoxは変更されません。
TがINotifyPropertyChangedを実装していおり,変更時にINotifyPropertyChangedのPropertyChangedイベントを発生させる必要があります。

オカピーα
記事: 120
登録日時: 13年前

Re: [C#] リストボックスの項目編集

#4

投稿記事 by オカピーα » 12年前

バグ さんが書きました:そんなにまどろっこしいかな?
私がオカピーαさんの質問を誤読していなければ、下記の3行でいけると思います(^-^)

コード:

// 選択項目のインデックスを取得する
int id = listBox1.SelectedIndex;

// 何も選択されてない場合は何もしない
if (id == -1) return;

// 選択項目のアイテムを新しい文字列に変更する
listBox1.Items[id] = string.Format("Test {0}", id); // 変更したい文字列をここに書く
できました!ありがとうございます!
C,C++,C#,これらを極めることを「3C政策」と言う

閉鎖

“C言語何でも質問掲示板” へ戻る