Xaml-timepicker

提供:Dev Guides
移動先:案内検索

XAML-TimePicker

TimePickerは、ユーザーが時間値を選択できるようにするコントロールです。 TimePickerクラスの階層的な継承は次のとおりです-

TimePicker Hierarchy

プロパティ

以下は、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時の間で選択されると、次のメッセージが表示されます-

TimePicker出力

それ以外の場合、次のメッセージが表示されます-

TimePicker出力1

上記のサンプルコードを実行し、他のいくつかのプロパティとイベントを試すことをお勧めします。