我想顯示GridView標題中一週的7天,所以我的代碼在下面的工作,但希望顯示基於下拉選擇一週的7天。我有下拉有:顯示Gridview標題中的一週中的7天
WeekStart WeekEnd
2015-11-15 2015-11-21
2015-11-22 2015-11-28
等..因此,如果降的選擇下來就是2015年11月15日,然後我的gridview的頭應該從2015年11月15日至2015-11開始displayig -21。再次,如果下拉列表中的selectoin是2015-11-22,那麼gridview標題應該從所選日期開始顯示:2015-11-22等等..我的代碼當前開始顯示今天的日期,但我想開始根據下拉選項顯示標題
<asp:DropDownList ID="ddlSelectWeek" runat="server" OnSelectedIndexChanged="ddlSelectWeek_SelectedIndexChanged" Width="200px">
<asp:ListItem Text="2015-11-15" Value="2015-11-15"></asp:ListItem>
<asp:ListItem Text="2015-11-22" Value="015-11-22"></asp:ListItem>
<asp:ListItem Text="2015-11-29" Value="2015-11-29"></asp:ListItem>
</asp:DropDownList>
protected void ddlSelectWeek_SelectedIndexChanged(object sender, EventArgs e)
{
BindGridview();
}
protected void BindGridview()
{
if (!this.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[8] {
new DataColumn("Category"),
new DataColumn("Day1"),
new DataColumn("Day2"),
new DataColumn("Day3"),
new DataColumn("Day4"),
new DataColumn("Day5"),
new DataColumn("Day6"),
new DataColumn("Day7"),
});
//add your category
dt.Rows.Add("Travelling");
dt.Rows.Add("Food");
dt.Rows.Add("Air Fare,");
dt.Rows.Add("Auto Rental");
gvCategory.DataSource = dt;
gvCategory.DataBind();
//for generating datewise coloumn
for (int i = 1; i < gvCategory.HeaderRow.Cells.Count; i++)
{
gvCategory.HeaderRow.Cells[i].Text = DateTime.Now.AddDays(i - 1).ToString("ddd") + " " + DateTime.Now.AddDays(i - 1).ToShortDateString();
}
}
}
回發的下拉列表改變事件,並使用所選擇的日期重建GridView的。 –
約翰,我已根據您的建議更新了代碼.. – moe
您幾乎擁有它。只需將選定的下拉值作爲參數傳遞給BindGridview函數,然後使用該值代替DateTime.Now。同時刪除if(!this.IsPostBack)檢查。 –