2013年10月21日 星期一

ASP Dropdownlist + Calendar 下拉式選單搭配日曆控制項

效果:
(1) 按下日曆圖示,可跳出日曆控制項
(2) 用下拉式選單選擇年分,即時更新日曆控制項




作法:


  • 利用Panel控制項即可做到簡易的彈出效果。

  1. 設置圖片按鈕(ImageButton)
  2. 將日曆放在Panel內,Panel的屬性 Visible="false"
  3. 圖片按鈕按下的事件中,改變Panel的屬性 Visible="true"。參考code:
即為按一下顯示,再按一下隱藏。


  • Dropdownlist 連動日曆

  1. Dropdownlist 的屬性必須設置 AutoPostBack="true" ,才會在點選選單項目之後進行Postback,否則預設是不會的。
  2. Dropdownlist 設置 SelectedIndexChanged事件。在此事件內獲取選擇的項目,經過型別轉換後設定Calendar.VisibleDate。參考code:

這邊是設定為選取年的1月1日。



  • 日曆連動Dropdownlist 
  1. 在日曆設置OnSelectionChanged事件。在此事件內獲取使用者選擇的日期後(Calendar.SelectedDate) 再設置到 DropDownList.SelectedValue。
  2. 當然,DropDownList裡面必須要包含選擇的項目,不然會出錯,所以要用判斷式來過濾。
  3. 參考code:
我這邊先在TextBox裡面顯示月跟日,然後用if判斷日曆選取的年份是否在我要的範圍內。

  • 建議再把以上的東西包在UpdatePanel內,這樣畫面就不會跳來跳去了。

沒有留言:

張貼留言

跟我說說話吧!