c# - Multiple DisplayMember using special class -



c# - Multiple DisplayMember using special class -

i trying listbox display concatenation of multiple rows of table accommodation.

because can't edit datasource, prepared class, accommodationentity, contains both original accommodation object , string want listbox display.

however, reason, fail set displaymember property of listbox, displays default jibber-jabber.

i set listbox follows:

accommodationlist.displaymember = "texttoshow"; // load , set accommodation list<accommodationentity> relatedaccommodations = dt.listholidayaccommodation(relatedholiday); accommodationlist.datasource = relatedaccommodations; accommodationlist.refresh();

the class objects stored in datasource looks this:

class accommodationentity { public accommodation classicaccommodation; public string texttoshow; public accommodationentity(stay relatedstay) { this.classicaccommodation = relatedstay.accommodation; string = relatedstay.datefrom.tostring(); string = relatedstay.dateto.tostring(); string city = relatedstay.accommodation.location.tostring(); string hotelname = relatedstay.accommodation.name.tostring(); this.texttoshow = hotelname + ", " + city + " (" + + " - " + + ")"; } }

} `

and finally, there method searching (returning right objects):

public list<accommodationentity> listholidayaccommodation(holiday selectedholiday) { list<accommodationentity> ubytovani = new list<accommodationentity>(); var stays = singlestay in selectedholiday.stays select singlestay; foreach (stay singlestay in stays) { accommodationentity newstay = new accommodationentity(singlestay); ubytovani.add(newstay); } homecoming ubytovani; }

i know datasource contains right data, reason, seems displaymember property remains set "".

any help appreciated.

thanks.

did seek set displaymember , displayvalue this. "name"/"value" name of property in accomodation class.

list<accommodationentity> relatedaccommodations = dt.listholidayaccommodation(relatedholiday); accommodationlist.datasource = relatedaccommodations; accommodationlist.displaymember = "name"; accommodationlist.valuemember = "value";

update:

make sure texttoshow property, not public field.

c# winforms data-binding

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -