При выборе новой даты ячейка DayRender теряется - PullRequest
0 голосов
/ 09 мая 2011

Я изменяю цвет фона для отдельных ячеек в элементе управления DayRender, но когда я выбираю другую дату, цвет фона, который я выбрал для ячеек, теряется.Я оглянулся и не могу найти то, что ищу.Надеюсь, этот код сделает более понятным то, что я хочу, чтобы мой код делал.

protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
{String sFullDate, sTradacomsDate;
    XmlNode node;

    sFullDate = e.Day.Date.Day.ToString("00") + "/" + e.Day.Date.Month.ToString("00") + "/" + e.Day.Date.Year.ToString();
    sTradacomsDate = e.Day.Date.Year.ToString().Substring(2,2) + e.Day.Date.Month.ToString("00") + e.Day.Date.Day.ToString("00");

    if (xmlDoc != null)
    {
        node = xmlDoc.SelectSingleNode("Dates/dbo.ASNs[FileDate = '" + sFullDate + "']");

        if (node != null)
        {
            e.Cell.BackColor = System.Drawing.Color.YellowGreen;
            e.Cell.ForeColor = System.Drawing.Color.White;
        }
    } 
    if (xmlDoc2 != null)
    {
        node = xmlDoc.SelectSingleNode("Dates/dbo.Orders[DateOrderPlaced = '" + sTradacomsDate + "']");

        if (node != null)
        {
            if (e.Cell.BackColor == System.Drawing.Color.Green)
            {
                e.Cell.BackColor = System.Drawing.Color.Orange;
                e.Cell.ForeColor = System.Drawing.Color.White;
            }
            else 
            {
                e.Cell.BackColor = System.Drawing.Color.Blue;
            }
        }
    }

1 Ответ

1 голос
/ 09 мая 2011

Я предполагаю, что у вас не включен ViewState для элемента управления.Когда вы выбираете дату, он выполняет пост обратно, чтобы обработать событие;если ViewState выключен и вы не сбрасываете цвета ячеек, они вернутся в состояние по умолчанию.Убедитесь, что EnableViewState="true" включен на уровне страницы, пользователя и Календаря.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...