Birden çok tablo satırı Accommodation
bir birleştirme görüntülemek için bir ListBox almaya çalışıyorum.Çoklu DisplayMember özel sınıf kullanarak
Veri kaynağını düzenleyemediğim için, hem orijinal Accommodation
nesnesini hem de ListBox'un görüntülenmesini istediğim dizeyi içeren bir sınıf hazırladım, AccommodationEntity
.
Ancak, bazı nedenlerden ötürü, varsayılan jibber-jabber'i görüntüleyen ListBox'un DisplayMember özelliğini ayarlayamıyorum. aşağıdaki gibi
ben listbox kurmak:
accommodationList.DisplayMember = "textToShow";
// load and set up accommodation
List<AccommodationEntity> relatedAccommodations =
dt.listHolidayAccommodation(relatedHoliday);
accommodationList.DataSource = relatedAccommodations;
accommodationList.Refresh();
veri kaynağı saklanan nesneler için sınıf şuna benzer:
class AccommodationEntity
{
public accommodation classicAccommodation;
public string textToShow;
public AccommodationEntity(stay relatedStay)
{
this.classicAccommodation = relatedStay.accommodation;
string from = relatedStay.dateFrom.ToString();
string to = relatedStay.dateTo.ToString();
string city = relatedStay.accommodation.location.ToString();
string hotelName = relatedStay.accommodation.name.ToString();
this.textToShow = hotelName + ", " + city + " (" + from + " - " + to + ")";
}
}
} `
Ve nihayet, orada bazı arama yapan (doğru nesneleri döndüren) bir yöntemdir:
public List<AccommodationEntity> listHolidayAccommodation(holiday selectedHoliday)
{
List<AccommodationEntity> ubytovani = new List<AccommodationEntity>();
var stays = from singleStay in selectedHoliday.stays
select singleStay;
foreach (stay singleStay in stays)
{
AccommodationEntity newStay = new AccommodationEntity(singleStay);
ubytovani.Add(newStay);
}
return ubytovani;
}
Veri kaynağının doğru verileri içerdiğini biliyorum, ancak bazı nedenlerle, DisplayMember özelliği ""
olarak ayarlanmış gibi görünüyor.
Herhangi bir yardım için teşekkür ederiz.
Teşekkürler.
Üzgünüm, yapmam form accommodationList kullanarak başlatır .DisplayMember = "textToShow"; textToShow, görüntülemek istediğim dizeyi içeren özelliğin adıdır. – Ondrej
@Ondrej: Özellikleri sizin ayarlayacağınız şekilde ayarlıyorsanız, belki de diğer ilgili sınıflar için kodun bir kısmını yayınlayın. Belki onlar için doğru bir şey ayarlanmamıştır. –
, intran gönderimini güncelledi – Ondrej