将复选框列表与接下来的 7 天日期值绑定
Bind Checkboxlist with next 7 days Date Value
我的页面中有一个 CheckboxList
,我想在我的列表中动态绑定未来 7 天(不是今天)的值。该值应该以右下图所示的格式插入,当我在 aspx
中显示页面时,我想显示日期和日期,如第一种图像格式所示。
所有动态绑定执行使用Page_Load()
<asp:CheckBoxList ID="CheckBoxList1" runat="server"></asp:CheckBoxList>
编辑#2:
public void BindCheckBoxList()
{
IEnumerable<string> dates=Enumerable.Range(1, 7).Select(p=>DateTime.Now.Date.AddDays(p).ToString("dddd HH:mm:ss"));
CheckBoxList1.DataSource = dates;
CheckBoxList1.DataBind();
}
V#1
创建一个方法,该方法将 return 列表中的日期以您喜欢的格式显示,
static IEnumerable<string> DatsOnInterval(DateTime from, DateTime thru,int dateInterval=1)
{
for(var day = from.Date; day.Date <= thru.Date; day = day.AddDays(dateInterval))
yield return day.DayOfWeek.ToString()+" "+day.Date.ToString("dd-MM-yyyy HH:mm:ss");
}
这样调用并填写复选框列表,
public static void Main()
{
try
{
var fromDt=DateTime.Now.AddDays(1);
var toDt=fromDt.AddDays(7);
var datas=DatsOnInterval(fromDt,toDt);
foreach(var x in datas)
{
Console.WriteLine(x);
}
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}
好吧,据我了解,您希望以 dayOfWeek year-month-day
格式显示未来 7 天的列表。这是一种方法:
你 CheckBoxList
应该是这样的:
<asp:CheckBoxList ID="CheckBoxList1" runat="server" DataTextField="date"
DataValueField="Id" /* Other Attributes */>
</asp:CheckBoxList>
这应该是绑定它的方法:
public void BindCheckBoxListWithNextSevenDays()
{
DateTime today = DateTime.Now;
DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("date", typeof(string));
for(int i = 1; i <= 7; i++)
{
dt.Rows.Add(i, today.AddDays(i).ToString("dddd yyyy-MM-dd")); // (dddd yyyy-MM-dd) will return the date in following format (Wednesday 2020/02-05)
}
CheckBoxList1.DataSource = dt;
CheckBoxList1.DataBind();
}
我的页面中有一个 CheckboxList
,我想在我的列表中动态绑定未来 7 天(不是今天)的值。该值应该以右下图所示的格式插入,当我在 aspx
中显示页面时,我想显示日期和日期,如第一种图像格式所示。
所有动态绑定执行使用Page_Load()
<asp:CheckBoxList ID="CheckBoxList1" runat="server"></asp:CheckBoxList>
编辑#2:
public void BindCheckBoxList()
{
IEnumerable<string> dates=Enumerable.Range(1, 7).Select(p=>DateTime.Now.Date.AddDays(p).ToString("dddd HH:mm:ss"));
CheckBoxList1.DataSource = dates;
CheckBoxList1.DataBind();
}
V#1
创建一个方法,该方法将 return 列表中的日期以您喜欢的格式显示,
static IEnumerable<string> DatsOnInterval(DateTime from, DateTime thru,int dateInterval=1)
{
for(var day = from.Date; day.Date <= thru.Date; day = day.AddDays(dateInterval))
yield return day.DayOfWeek.ToString()+" "+day.Date.ToString("dd-MM-yyyy HH:mm:ss");
}
这样调用并填写复选框列表,
public static void Main()
{
try
{
var fromDt=DateTime.Now.AddDays(1);
var toDt=fromDt.AddDays(7);
var datas=DatsOnInterval(fromDt,toDt);
foreach(var x in datas)
{
Console.WriteLine(x);
}
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}
好吧,据我了解,您希望以 dayOfWeek year-month-day
格式显示未来 7 天的列表。这是一种方法:
你 CheckBoxList
应该是这样的:
<asp:CheckBoxList ID="CheckBoxList1" runat="server" DataTextField="date"
DataValueField="Id" /* Other Attributes */>
</asp:CheckBoxList>
这应该是绑定它的方法:
public void BindCheckBoxListWithNextSevenDays()
{
DateTime today = DateTime.Now;
DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("date", typeof(string));
for(int i = 1; i <= 7; i++)
{
dt.Rows.Add(i, today.AddDays(i).ToString("dddd yyyy-MM-dd")); // (dddd yyyy-MM-dd) will return the date in following format (Wednesday 2020/02-05)
}
CheckBoxList1.DataSource = dt;
CheckBoxList1.DataBind();
}