次の方法で共有


TimePicker.Time プロパティ

定義

タイム ピッカーで現在設定されている時刻を取得または設定します。

public:
 property TimeSpan Time { TimeSpan get(); void set(TimeSpan value); };
TimeSpan Time();

void Time(TimeSpan value);
public System.TimeSpan Time { get; set; }
var timeSpan = timePicker.time;
timePicker.time = timeSpan;
Public Property Time As TimeSpan
<TimePicker Time="timeSpanString" />

プロパティ値

タイム ピッカーで現在設定されている時刻。

ここでは、 プロパティを Time 使用して、ピッカーの時刻と現在の時刻を比較します。

時刻の選択、ボタン、テキスト ラベル。

<StackPanel>
    <TimePicker x:Name="checkTimePicker"/>
    <Button Content="Check time" Click="{x:Bind CheckTime}"/>
    <TextBlock x:Name="resultText"/>
</StackPanel>
private void CheckTime()
{
    // Using the Time property.
    DateTime myTime = DateTime.Today + checkTimePicker.Time;
    if (DateTime.Now >= myTime)
    {
        resultText.Text = "Your selected time has already past.";
    }
    else
    {
        string hrs = (myTime - DateTime.Now).Hours.ToString();
        string mins = (myTime - DateTime.Now).Minutes.ToString();
        resultText.Text = string.Format("Your selected time is {0} hours, {1} minutes from now.", hrs, mins);
    }
}

注釈

タイム ピッカー コントロールには、TimeChanged API と SelectedTimeSelectedTimeChanged/ API の両方Time/があります。 両者の違いは、Time では null 値が許容されないのに対して、SelectedTime では null 値が許容されることです。

SelectedTime の値は、時刻の選択を設定するのに使用され、既定では null に指定されています。 SelectedTimenull の場合、Time プロパティの TimeSpan は 0 に設定されます。それ以外の場合、Time の値は SelectedTime の値と同期されます。 SelectedTimenull の場合、ピッカーは 'unset' になり、時刻ではなくフィールド名が表示されます。

アプリの実行中に現在の時刻を追跡する値にコード バインドを指定しない限り、時刻はリアルタイムで増加しません (時計のように)。

時刻値を XAML の属性として設定できます。 これは、XAML で TimePicker オブジェクトを既に宣言していて、時刻値にバインドを使用していない場合に最も簡単です。 Hh:Mm という形式の文字列を使用します。Hh は時間で、0 から 23 の間、Mm は分で、0 から 59 の間にすることができます。 "0" は Hh または Mm の初期文字にすることができ、通常は 0 から 9 の値を明確にするために含まれます。 たとえば、"9:5" と "09:05" はどちらも有効であり、同じ時刻を表しますが、"09:05" はマークアップで読みやすくなります。

コードで時刻を設定するには、プログラミング言語に応じてさまざまな手法を使用できます。 値は、C# および Visual Basic の 場合は System.TimeSpan 、Visual C++ コンポーネント拡張機能 (C++/CX) の 場合は Windows.Foundation.TimeSpan として表されます。 適切な System.TimeSpanTime を生成する最も簡単な方法は、 TimeSpan.Parse静的メソッドを使用することです。 Hh:Mm (時間:分) の形式で文字列を使用します。

コードで設定するか XAML に設定するかに関係なく、 TimePicker クラスには、設定しようとしたときに保持される値の強制ロジックがあります。 日の値は無視されます。 秒の値は無視されます (たとえば、30 を超える秒は次の分に切り上げられません)。 秒の小数部は無視されます。 値は折り返されません (たとえば、"24:00" の値が無効です)。内の TimeSpan 最小値は 0 (00:00、午前 0 時) の時刻であり、最大値は 23:59 です。 範囲外の値は例外をスローしますが、仕様によっては、 の検証と強制Timeではなく、構築でTimeSpan例外が発生する可能性があります。

Visual C++ コンポーネント拡張機能 (C++/CX) で値を設定Timeするには、TimeSpan 構造体のフィールドを設定Durationします。 Duration は、時間を 100 ナノ秒単位で指定します。時間:分表現との間で変換するための独自のロジックを記述します。

コードまたは XAML で に Time 設定した値は、コントロールに表示される初期値を指定します。 実行時のアプリでは、その値は通常、タイム ピッカーのポップアップでユーザーによって設定されます。 ユーザーによって選択された時間が設定され、TimeChanged イベントは、ユーザーが変更を行い、タイム ピッカー ポップアップの [チェック マーク] ボタンを押して選択をコミットしたときに発生します。

以前のバージョンの注意事項

Windows 10 Version 1809 (SDK 17763) で SelectedTime プロパティが導入される前のバージョンでは、 の既定値Timeは、アプリがその特定のオブジェクトを実行または読み込むときに TimePicker オブジェクトがインスタンス化される時間です。

適用対象