如何在日历中显示以逗号分隔的日期

本文关键字:分隔 日期 显示 日历 | 更新日期: 2023-09-27 18:11:45

我有一个文本框,radCalendar和按钮控件在我的asp.net网页

当我在radcalendar中选择多个日期时,我将其存储在文本框中,分别为02-Sep-2015, 03-Sep-2015, 04-Sep-2015。我在radcalendar中选择日期,在文本框中添加日期,检查下面的代码:

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        On Error Resume Next
        Dim stringbuilder As StringBuilder = New StringBuilder
        For Each selecteddate As RadDate In RadCalendar1.SelectedDates
            stringbuilder.Append(selecteddate.Date.ToString("dd-MMM-yyyy") + ", ")
        Next
        stringbuilder.Length -= 2
        TextBox1.Text = stringbuilder.ToString
    End Sub

What i want ?

我想如果文本框已经在page_load事件上有多个日期,如2015/09-03,2015/09-09,2015/9/11,那么当页面加载和休息时,以下日期将在radcalendar中突出显示,所有日历日期都被禁用。

如何在日历中显示以逗号分隔的日期

如果您在SelectionMode=Single,您可以使用日历的SelectedDate属性设置所选日期,如:

RadCalendar calendar = new RadCalendar();  
calendar.SelectionMode = SelectionMode.Single;  
calendar.SelectedDate = new DateTime(2008, 7, 7); 

对于其他SelectionModes (Multiple and Extended),您应该使用日历的SelectedDates属性,如:

RadCalendar calendar = new RadCalendar();  
calendar.SelectionMode = SelectionMode.Extended;  
calendar.SelectedDates.Add(new DateTime(2008, 7, 7));  
calendar.SelectedDates.Add(new DateTime(2008, 7, 8));  
calendar.SelectedDates.Add(new DateTime(2008, 10, 10)); 

那么执行以下操作:

if(Page.IsPostBack){
   if( String.IsNullOrWhiteSpace(datestextbox.Text)==false)  //textbox in which dates as stored as comma separated
{
string[] datesToShow = datestextbox.Text.Split(',');
foreach (string date in datesToShow)
{
  yourCalendar.SelectedDates.Add(new DateTime (date )); 
}
}
}