表示したい文字列とそのアイテムのIDを保持するクラスがあります。
ref class ListBoxItem {
private:
int id;
String ^ name;
public:
ListBoxItem(int id, const char * name) { this->id = id; this->name = gcnew System::String(name); }
virtual String ^ ToString() new { return name; }
};
そして、次のように各項目を ListBox に追加します。
for(list<string>::iterator i = listItems.begin(); i != listItems.end(); i++)
listBoxItems->Items->Add(gcnew ListBoxItem(2, (*i).c_str()));
これListBox
により、正しい数のアイテムが生成されますが、すべてのアイテムは「ListBoxItem」と呼ばれます。
代わりに、でメソッドが呼び出されListBox
たときに生成される文字列を表示する必要があります。ToString
ListBoxItem