TimePicker.SelectedTime Proprietà

Definizione

Ottiene o imposta l'ora attualmente selezionata nella selezione ora.

public:
 property IReference<TimeSpan> ^ SelectedTime { IReference<TimeSpan> ^ get(); void set(IReference<TimeSpan> ^ value); };
IReference<TimeSpan> SelectedTime();

void SelectedTime(IReference<TimeSpan> value);
public System.Nullable<System.TimeSpan> SelectedTime { get; set; }
var iReference = timePicker.selectedTime;
timePicker.selectedTime = iReference;
Public Property SelectedTime As Nullable(Of TimeSpan)

Valore della proprietà

Ora attualmente selezionata nella selezione ora.

Esempio

In questo caso, la proprietà SelectedTime viene usata per confrontare l'ora selezionata con l'ora corrente.

Poiché la proprietà SelectedTime ammette valori Null, è necessario eseguirne il cast esplicito in DateTime, come illustrato di seguito: DateTime myTime = (DateTime)(DateTime.Today + checkTimePicker.SelectedTime);.

Selezione ora, pulsante e etichetta di testo.

<StackPanel>
    <TimePicker x:Name="checkTimePicker"/>
    <Button Content="Check time" Click="{x:Bind CheckTime}"/>
    <TextBlock x:Name="resultText"/>
</StackPanel>
private void CheckTime()
{
    // Using the SelectedTime property (nullable requires cast to DateTime).
    DateTime myTime = (DateTime)(DateTime.Today + checkTimePicker.SelectedTime);
    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);
    }
}

Commenti

Il controllo selezione ora include sia le API TimeChanged/ che SelectedTime/SelectedTimeChanged. La differenza tra questi è che Time non ammette valori Null, mentre SelectedTime ammette valori Null.

Il valore di SelectedTime viene usato per popolare il selettore dell'ora ed è null per impostazione predefinita. Se SelectedTime è null, la proprietà Time viene impostata su TimeSpan pari a 0; in caso contrario, il valore Time viene sincronizzato con il valore SelectedTime. Quando SelectedTime è null, il selettore è "unset" (non impostato) e mostra i nomi dei campi anziché un'ora.

L'ora non incrementerà in tempo reale (come un orologio) a meno che non si fornisca un'associazione di codice a un valore che tiene traccia dell'ora corrente mentre l'app è in esecuzione.

È possibile impostare il valore dell'ora come attributo in XAML. Questo è probabilmente più semplice se stai già dichiarando l'oggetto TimePicker in XAML e non usi associazioni per il valore di ora. Usare una stringa nel formato Hh:Mm dove Hh è ore e può essere compreso tra 0 e 23 e Mm è di minuti e può essere compreso tra 0 e 59. Un "0" può essere il carattere iniziale in Hh o Mm ed è in genere incluso per maggiore chiarezza di qualsiasi valore compreso tra 0 e 9. Ad esempio, "9:5" e "09:05" sono entrambi validi e rappresentano lo stesso tempo, ma "09:05" è più facile da leggere nel markup.

Per impostare l'ora nel codice, sono disponibili tecniche diverse a seconda del linguaggio di programmazione. Il valore è rappresentato come System.TimeSpan per C# o Windows. Foundation.TimeSpan per C++. Probabilmente il modo più semplice per produrre un valore System.TimeSpan appropriato SelectedTime consiste nell'usare il metodo statico TimeSpan.Parse. Usare una stringa nel formato Hh:Mm (ore:minuti).

Se impostato nel codice o in XAML, la classe TimePicker ha la logica di coercizione per il valore che mantiene quando si tenta di impostarla. I valori dei giorni vengono ignorati. I valori dei secondi vengono ignorati (ad esempio, i secondi oltre 30 non vengono arrotondati al minuto successivo). I secondi frazionari vengono ignorati. I valori non eseguono il wrapping(ad esempio, il valore "24:00" non è valido). Il valore minimo all'interno TimeSpan di è un'ora di 0 (00:00, mezzanotte) e il valore massimo è 23:59. I valori al di fuori dell'intervallo generano eccezioni, ma a seconda delle specifiche, le eccezioni potrebbero avere origine nella TimeSpan costruzione anziché dalla convalida e dalla coercizione di SelectedTime.

Per impostare il SelectedTime valore in C++, impostare il Duration campo della struttura TimeSpan . Duration specifica un tempo in 100 unità di nanosecondo; scrivere una logica personalizzata per la conversione da e verso le rappresentazioni hours:minutes.

Qualsiasi valore impostato per SelectedTime nel codice o XAML specifica il valore iniziale visualizzato nel controllo . Nell'app in fase di esecuzione tale valore viene in genere impostato dall'utente nel riquadro a comparsa della selezione ora. L'ora selezionata dall'utente viene impostata e l'evento SelectedTimeChanged si verifica quando l'utente apporta una modifica e preme il pulsante segno di spunta nel riquadro a comparsa selezione ora per confermare la selezione.

Si applica a

Vedi anche