C# Asp.Net日历中的多日期选择器
我有Asp.net日历。如果我选择了一个日期,请更改所选日期的颜色。但我选择了多个日期,则不会保留所选日期的颜色。如何解决这个问题C# Asp.Net日历中的多日期选择器,c#,asp.net,C#,Asp.net,我有Asp.net日历。如果我选择了一个日期,请更改所选日期的颜色。但我选择了多个日期,则不会保留所选日期的颜色。如何解决这个问题 <asp:Calendar ID="calDate" runat="server" SelectedDayStyle-BackColor="DarkBlue" selectionmode="DayWeekMonth" selectorstyle-font-bold="True" selectorStyle-backcolor="#3366ff
<asp:Calendar ID="calDate" runat="server" SelectedDayStyle-BackColor="DarkBlue" selectionmode="DayWeekMonth"
selectorstyle-font-bold="True" selectorStyle-backcolor="#3366ff"
font-name="Tahoma" font-size="12" backcolor="ivory"
selecteddaystyle-font-bold="True" OnDayRender="calDate_DayRender" OnSelectionChanged="calDate_SelectionChanged" >
protected void calDate_DayRender(object sender, DayRenderEventArgs e)
{
if (e.Day.IsSelected)
e.Cell.BackColor = Color.Orange;
}
受保护的无效calDate_DayRender(对象发送方,DayRenderReventArgs e)
{
如果(如选择的日期)
e、 Cell.BackColor=Color.Orange;
}
基于您正在使用ASP.net内置日历控件的假设
您需要跟踪所选日期。一种方法是使用会话。另一个可能是ViewState等。下面是一些示例代码,让您开始:
public static List<DateTime> list = new List<DateTime>();
protected void calDate_DayRender(object sender, DayRenderEventArgs e)
{
if (e.Day.IsSelected == true)
{
list.Add(e.Day.Date);
e.Cell.BackColor = Color.Orange;
}
Session["SelectedDates"] = list;
}
protected void calDate_SelectionChanged(object sender, EventArgs e)
{
if (Session["SelectedDates"] != null)
{
List<DateTime> newList = (List<DateTime>)Session["SelectedDates"];
foreach (DateTime dt in newList)
{
calDate.SelectedDates.Add(dt);
}
list.Clear();
}
}
publicstaticlist=newlist();
受保护的无效calDate_DayRender(对象发送方,DayRenderReventArgs e)
{
如果(e.Day.IsSelected==true)
{
列表。添加(如日期);
e、 Cell.BackColor=Color.Orange;
}
会话[“选定日期”]=列表;
}
受保护的无效calDate_SelectionChanged(对象发送方,事件参数e)
{
如果(会话[“SelectedDates”]!=null)
{
列表新建列表=(列表)会话[“选定日期”];
foreach(newList中的DateTime dt)
{
calDate.SelectedDates.Add(dt);
}
list.Clear();
}
}
你能更清楚地回答这个问题吗?或者你能分享一下你的代码吗?是的,哪个日历?你有没有考虑过它可能是一个不支持它的?它是system.web.ui.WebControl.calendar,然后使用另一个。一个能很好地做到这一点的(支持多选)。到目前为止你都尝试了什么?提供一些代码!控件具有选择周、月等的功能。我不知道它是否允许选择不连续的日期范围。看看SelectionMode
property->我的答案对你有用吗。如果回答了,你能把它标记为“已回答”吗。谢谢