Xaml-timepicker
XAML-TimePicker
TimePickerは、ユーザーが時間値を選択できるようにするコントロールです。 TimePickerクラスの階層的な継承は次のとおりです-
プロパティ
以下は、TimePickerの一般的に使用されるプロパティです。
Sr.No. | Property & Description |
---|---|
1 |
ClockIdentifier 使用するクロックシステムを取得または設定します。 |
2 |
ClockIdentifierProperty ClockIdentifier依存プロパティの識別子を取得します。 |
3 |
Header コントロールのヘッダーのコンテンツを取得または設定します。 |
4 |
HeaderProperty Header依存プロパティを識別します。 |
5 |
HeaderTemplate コントロールのヘッダーのコンテンツを表示するために使用されるDataTemplateを取得または設定します。 |
6 |
HeaderTemplateProperty HeaderTemplate依存プロパティを識別します。 |
7 |
MinuteIncrement 分ピッカーに表示される時間の増分を示す値を取得または設定します。 たとえば、15は、TimePickerの分コントロールに選択肢00、15、30、45のみが表示されることを指定します。 |
8 |
MinuteIncrementProperty MinuteIncrement依存プロパティの識別子を取得します。 |
9 |
Time タイムピッカーで現在設定されている時間を取得または設定します。 |
10 |
TimeProperty Time依存プロパティの識別子を取得します。 |
イベント
以下は、TimePickerクラスで一般的に使用されるイベントです。
Sr.No. | Event & Description |
---|---|
1 |
ManipulationCompleted UIElementの操作が完了したときに発生します。 (UIElementから継承) |
2 |
ManipulationDelta 入力デバイスが操作中に位置を変更すると発生します。 (UIElementから継承) |
3 |
ManipulationInertiaStarting 入力デバイスが操作中にUIElementオブジェクトとの接触を失い、慣性が始まると発生します。 (UIElementから継承) |
4 |
ManipulationStarted 入力デバイスがUIElementで操作を開始すると発生します。 (UIElementから継承) |
5 |
ManipulationStarting 操作プロセッサが最初に作成されたときに発生します。 (UIElementから継承) |
6 |
TimeChanged 時間値が変更されたときに発生します。 |
方法
以下は、TimePickerクラスで一般的に使用されるメソッドです。
Sr.No. | Method & Description |
---|---|
1 |
OnManipulationCompleted ManipulationCompletedイベントが発生する前に呼び出されます。 (Controlから継承) |
2 |
OnManipulationDelta ManipulationDeltaイベントが発生する前に呼び出されます。 (Controlから継承) |
3 |
OnManipulationInertiaStarting ManipulationInertiaStartingイベントが発生する前に呼び出されます。 (Controlから継承) |
4 |
OnManipulationStarted ManipulationStartedイベントが発生する前に呼び出されます。 (Controlから継承) |
5 |
OnManipulationStarting ManipulationStartingイベントが発生する前に呼び出されます。 (Controlから継承) |
例
次の例は、XAMLアプリケーションでのTimePickerの使用法を示しています。 以下は、いくつかのプロパティを使用してTimePickerを作成および初期化するXAMLコードです。
<Page x:Class = "XAMLTimePicker.MainPage"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local = "using:XAMLTimePicker"
xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable = "d">
<Grid Background = "{ThemeResource ApplicationPageBackgroundThemeBrush}">
<StackPanel Orientation = "Horizontal" Height = "60" Margin = "46,67,-46,641">
<TimePicker x:Name = "arrivalTimePicker" Header = "Arrival Time" Margin = "0,1"/>
<Button Content = "Submit" Click = "SubmitButton_Click"
Margin = "5,0,0,-2" VerticalAlignment = "Bottom"/>
<TextBlock x:Name = "Control1Output" FontSize = "24"/>
</StackPanel>
</Grid>
</Page>
C#でのクリックイベントの実装は次のとおりです-
using System;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
namespace XAMLTimePicker {
public sealed partial class MainPage : Page {
public MainPage() {
this.InitializeComponent();
}
private void SubmitButton_Click(object sender, RoutedEventArgs e) {
if (VerifyTimeIsAvailable(arrivalTimePicker.Time) == true) {
Control1Output.Text = string.Format("Thank you. Your appointment is set for {0}.",
arrivalTimePicker.Time.ToString());
} else {
Control1Output.Text = "Sorry, we're only open from 8AM to 5PM.";
}
}
private bool VerifyTimeIsAvailable(TimeSpan time) {
//Set open (8AM) and close (5PM) times.
TimeSpan openTime = new TimeSpan(8, 0, 0);
TimeSpan closeTime = new TimeSpan(17, 0, 0);
if (time >= openTime && time < closeTime) {
return true;//Open
}
return false;//Closed
}
}
}
上記のコードをコンパイルして実行すると、次の出力が表示されます。 時間が午前8時から午後5時の間で選択されると、次のメッセージが表示されます-
それ以外の場合、次のメッセージが表示されます-
上記のサンプルコードを実行し、他のいくつかのプロパティとイベントを試すことをお勧めします。