如何在日历asp.net中绑定特定日期?

时间:2014-09-04 12:04:26

标签: c# asp.net

我有一个绑定日历的列表。我有日期列表。但是加载日期时出现问题。

我试过这里:

void BindCalender() 
    {
        var days = (List<DateTime>)Session["WorkDates"];
        if (days != null)
        {
            foreach (var v in days)
            {
                Calendar1.SelectedDates.Add(v);                   
            }                            
        }
    }

这会将日期添加到calendar1 但是,我如何禁用所有其他日期,这些日期会在这些日期?

1 个答案:

答案 0 :(得分:0)

在您的标记中,假设您有一个名为cal的日历,其编写如下:

<asp:Calendar ID="cal" runat="server" OnDayRender="cal_DayRender" />

然后你可以编写类似于下面方法的DayRender EventHandler来处理不可选择/排除的日期,添加三振出局和不同的BackColors以使其在UI中显而易见等。

   protected void cal_DayRender(object sender, DayRenderEventArgs e)
        {
            var days = (List<DateTime>)Session["WorkDates"];

            if (!days.Contains(e.Day.Date))
            {
                e.Day.IsSelectable = false;
                e.Cell.Font.Strikeout = true;
                e.Cell.BackColor = System.Drawing.Color.Chartreuse;
            }

        }