【萬里征程——Windows App開發】DatePicker&Timepicker
在前面我們走馬觀花地介紹了一大堆控制元件,其中自然也包括這DatePicker和TimePicker,那麼稍微高階些的用法呢?
如果你想做一個關於健身、鬧鐘等的App,那麼不可避免的會用到時間這些控制元件了。
<DatePicker x:Name="datePicker" Header="NoMasp Date" Foreground="Beige"/>
<Button x:Name="btnOK" Click="btnOK_Click" Content="確定" Foreground="Cyan" Margin= "292,378,0,352" >
<Button.Flyout>
<Flyout>
<TextBlock x:Name="tblock1" Foreground="Fuchsia"/>
</Flyout>
</Button.Flyout>
</Button>
那麼我們可能需要所選定的時間是未來時間,也就是比應用執行時的時間要大。獲取當前選中的時間給程式的其他部分使用也是很簡單的,我這裡的year等都在之前定義過了哦,在函式內定義可是不明智的喲。
private void btnOK_Click(object sender, RoutedEventArgs e)
{
if(datePicker.Date>DateTimeOffset.Now)
{
tblock1.Text = string.Format("你所選中的時間是:{0}。", datePicker.Date.ToString("D"));
}
else
{
tblock1.Text = "噢!你想要穿越嗎?";
}
year = datePicker.Date.Year;
month = datePicker.Date.Month;
day = datePicker.Date.Day;
}
有意思的事情又來了,如果你是想要做一個時間囊,預設的時間就是10年之後,那麼DatePicker的初始事件如果正好就是10年後不是非常好嗎。那麼我們要做的呢,首先就是給DatePicker的Loaded寫一條事件啦。(哈哈,我覺得App是儲存不了10年喲)
private void datePicker_Loaded(object sender, RoutedEventArgs e)
{
datePicker.Date = DateTimeOffset.Now.AddYears(10);
}
如果不想興師動眾去用DatePicker的Loaded,那麼也可以直接在後臺程式碼中這樣寫哦。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
datePicker.Date = DateTimeOffset.Now.AddYears(10);
}
我還做了一個小測試呢,在Loaded事件中讓時間增加11年,在OnNavigatedTo事件中讓時間增加10年,結果——結果是增加了11年啦,看來還是自家的Loaded更厲害嘛。
接下來就是TimePicker啦,回到健身的話題,假設哈,6點到18點才適合運動,那麼我們的Microsoft Band就做了以下這麼個要求(開玩笑啦)。
private void btnOK_Click(object sender, RoutedEventArgs e)
{
TimeSpan startTime = new TimeSpan(6, 0, 0);
TimeSpan endTime = new TimeSpan(18, 0, 0);
if(timePicker.Time>=startTime&&timePicker.Time<=endTime)
{
tblock1.Text = string.Format("這段時間運動都是很好的哦——{0}。", timePicker.Time.ToString());
}
else
{
tblock1.Text = "此時間吧不適合運動的吧?";
}
}
也許你還想控制手環上時間選擇器的初始時間,那麼程式碼來了。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
timePicker.Time = new TimeSpan(23, 0, 0);
}
作為強迫症患者呢,每次我設定鬧鐘的時候都要設定在一個比較好的時間,比如被5整除啦、質數啦。這裡可以用MinuteIncrement屬性來控制分鐘的增量喲,比如增量為5呀。從小學起就飛得把電子手錶的時間給設定成24小時制的,這個也是可以實現的,ClockIdentifier設定成24HourClock就搞定啦。
這篇部落格比較簡單,因此也沒有配圖。那麼,下一篇再見咯,感覺大家的支援!
為使本文得到斧正和提問,轉載請註明出處:
http://blog.csdn.net/nomasp
相關文章
- 【萬里征程——Windows App開發】動畫1WindowsAPP動畫
- 【萬里征程——Windows App開發】開發準備WindowsAPP
- 【萬里征程——Windows App開發】應用欄WindowsAPP
- 【萬里征程——Windows App開發】使用Toast通知WindowsAPPAST
- 【萬里征程——Windows App開發】繪製圖形WindowsAPP
- 【萬里征程——Windows App開發】畫筆和影象WindowsAPP
- 【萬里征程——Windows App開發】補充:JSONWindowsAPPJSON
- 【萬里征程——Windows App開發】動態磁貼WindowsAPP
- 【萬里征程——Windows App開發】使用華麗麗的字型WindowsAPP
- 【萬里征程——Windows App開發】如何使用貼上板WindowsAPP
- 【萬里征程——Windows App開發】ListView&GridView之分組WindowsAPPView
- 【萬里征程——Windows App開發】SemanticZoom檢視切換WindowsAPPOOM
- 【萬里征程——Windows App開發】控制元件大集合1WindowsAPP控制元件
- 【萬里征程——Windows App開發】控制元件大集合2WindowsAPP控制元件
- 【萬里征程——Windows App開發】在應用中整合搜尋WindowsAPP
- 【萬里征程——Windows App開發】DatePickerFlyout、TimePickerFlyout的使用WindowsAPP
- 【萬里征程——Windows App開發】頁面佈局和基本導航WindowsAPP
- 【萬里征程——Windows App開發】編輯文字及鍵盤輸入WindowsAPP
- 【萬里征程——Windows App開發】ListView&GridView之新增資料WindowsAPPView
- 【萬里征程——Windows App開發】應用設定和應用幫助WindowsAPP
- 【萬里征程——Windows App開發】用浮出控制元件做預覽效果WindowsAPP控制元件
- 【萬里征程——Windows App開發】檔案&資料——檔案選取器WindowsAPP
- 【萬里征程——Windows App開發】檔案&資料——寫入與讀取WindowsAPP
- 【萬里征程——Windows App開發】設定共享(共享源和共享目標)WindowsAPP
- 【萬里征程——Windows App開發】檔案&資料——獲取檔案屬性WindowsAPP
- 【萬里征程——Windows App開發】如何儲存、讀取、刪除應用資料WindowsAPP
- 【萬里征程——Windows App開發】檔案&資料——讀取檔案/資料夾名WindowsAPP
- 【萬里征程——Windows App開發】資料繫結——簡單示例、更改通知、資料轉換WindowsAPP
- 【萬里征程——Windows App開發】如何在多個頁面間讀取/儲存檔案【草稿】WindowsAPP
- Windows App 應用開發教程WindowsAPP
- 即拼商城APP開發(開發APP)APP
- 多端開發之uniapp開發appAPP
- Windows平臺上也可以進行iOS App的開發WindowsiOSAPP
- DAPP開發流程 | DAPP智慧合約開發APP
- 教育APP開發_教育培訓APP開發解決方案APP
- 擁抱開放,Serverless 時代的下一征程Server
- 教育app開發需要開發哪些功能APP
- Apple MDM 開發APP