[英]Calendar control in asp.net c#
我的 ASP.NET Web 應用程序中有一個文本框和一個日歷。
當我在日歷中選擇任何日期時,我希望該日期的日期/月份/年份顯示在文本框中。
在 .aspx 文件中
<form id="form1" runat="server">
<div>
<asp:Calendar ID="Calendar1" runat="server" OnSelectionChanged="Calendar1_SelectionChanged">
</asp:Calendar>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></div>
</form>
在 .aspx.cs 文件中
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
TextBox1.Text = Calendar1.SelectedDate.ToString();
}
在提問之前總是使用谷歌: http : //www.google.co.in/search? q=asp.net+%2B+calander+control+%2B+textbox&ie=utf-8&oe=utf-8&aq=t&rls =org。 mozilla:en-US:official&client=firefox-a
檢查下面的答案
private void Calendar1_SelectionChanged(System.Object sender, System.EventArgs e)
{
TextBox1.Text = Calendar1.SelectedDate;
}
或者
使用OnClientDateSelectionChanged
。 類似的例子在這里解釋得很好CalendarExtender Change date with Javascript
或者
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<asp:Calendar ID="Calendar1" runat="server"
onselectionchanged="Calendar1_SelectionChanged"></asp:Calendar>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:UpdatePanel>
假設您已經使用了 onselectionchanged 事件但沒有直接看到結果,您可以使用這樣的更新面板
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<asp:Calendar ID="Calendar1" runat="server"
onselectionchanged="Calendar1_SelectionChanged"></asp:Calendar>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:UpdatePanel>
如果您只是在尋找事件,那么它看起來像這樣
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
TextBox1.Text = Calendar.cal.SelectedDate.ToString();
}
處理日歷控件的“SelectionChanged”事件並在事件內部編寫此代碼,
txtbox.Text = Calendar1.SelectedDate;
txtbox.Invalidate();
您還可以嘗試查看 Ajax Toolkit CalendarExtender。 這為您提供了一個文本框,當您單擊它時會打開一個日歷,並且所選日期會自動添加到文本框中。
http://www.asp.net/ajax/ajaxcontroltoolkit/samples/calendar/calendar.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.