Я добавляю в список объектов DateTime на сервере каждый раз, когда клиент выбирает дату в элементе управления Calender, и, в свою очередь, выделяю все выбранные даты в элементе управления. Я могу выделить (изменить задний цвет) даты, созданные в списке при загрузке страницы, и первую выбранную клиентом дату. Однако дальнейший выбор даты на элементе управления просто меняет, какая дата выделена, т.е. не выделяя больше.
Я думал, что добавление выбранного объекта DateTime в список во время выполнения после выбора, а затем добавление каждого из них в свойство «выбранные даты» календарей позволит обойти проблему элемента управления календарем, очищающего свойство SelectedDates при выборе новой даты . Отладка путем печати всех дат в списке дат в текстовое поле показывает, что даты, с которыми был создан список, и последний выбор находятся только в списке, а не в предыдущих выборах. Мой вопрос и то, что я думаю, является проблемой: можно ли заполнить список на сервере действиями клиента во время выполнения и добавить? Я использую ASP с С# .Net3.5 на VS2008. Спасибо
Мой код System.Collections.Generic.List дат;
protected void Page_Load(object sender, EventArgs e) {
this.dates = new List<DateTime>();
this.dates.Add(new DateTime(2009,12,2));
this.dates.Add(new DateTime(2009, 12, 3));
this.dates.Add(new DateTime(2009, 12, 16));
fillDates();
}
protected void AvailCalender_SelectionChanged(object sender, EventArgs e){
this.dates.Add(this.AvailCalender.SelectedDate);
foreach (DateTime date in this.dates)
{
this.AvailCalender.SelectedDates.Add(date);
this.displayText.Text = this.displayText.Text + date.ToShortDateString();
}
fillDates();
}
protected void fillDates()
{
foreach (DateTime dates in this.dates)
{
this.AvailCalender.SelectedDates.Add(dates);
}
this.AvailCalender.SelectedDayStyle.BackColor = System.Drawing.Color.Blue;
}