TimePicker.SelectedTime Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur waktu yang saat ini dipilih di pemilih waktu.
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)
Nilai Properti
Waktu yang saat ini dipilih dalam pemilih waktu.
Persyaratan Windows
Rangkaian perangkat |
Windows 10, version 1809 (diperkenalkan dalam 10.0.17763.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v7.0)
|
Contoh
Di sini, SelectedTime
properti digunakan untuk membandingkan waktu yang dipilih dengan waktu saat ini.
Perhatikan bahwa karena SelectedTime
properti dapat diubah ke null, Anda harus secara eksplisit melemparkannya ke DateTime
, seperti ini: DateTime myTime = (DateTime)(DateTime.Today + checkTimePicker.SelectedTime);
.
<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);
}
}
Keterangan
Kontrol pemilih waktu memiliki APITimeChanged/ dan SelectedTime
/SelectedTimeChanged. Perbedaan antara ini adalah bahwa Time
tidak dapat diubah ke null, sementara SelectedTime
nullable.
Nilai digunakan SelectedTime
untuk mengisi pemilih waktu dan secara null
default. Jika SelectedTime
adalah null
, Time
properti diatur ke Rentang Waktu 0; jika tidak, Time
nilai disinkronkan dengan SelectedTime
nilai . Ketika SelectedTime
adalah null
, pemilih 'tidak diatur' dan menampilkan nama bidang alih-alih waktu.
Waktu tidak akan meningkat secara real-time (seperti jam) kecuali Anda memberikan kode yang mengikat ke beberapa nilai yang melacak waktu saat ini saat aplikasi berjalan.
Anda dapat mengatur nilai waktu sebagai atribut di XAML. Ini mungkin paling mudah jika Anda sudah mendeklarasikan objek TimePicker di XAML dan tidak menggunakan pengikatan untuk nilai waktu. Gunakan string dalam bentuk Hh:Mm di mana Hh adalah jam dan dapat antara 0 dan 23 dan Mm adalah menit dan dapat antara 0 dan 59. "0" dapat menjadi karakter awal baik dalam Hh atau Mm dan biasanya disertakan untuk kejelasan nilai apa pun 0 sampai 9. Misalnya, "9:5" dan "09:05" valid dan mewakili waktu yang sama, tetapi "09:05" lebih mudah dibaca dalam markup.
Untuk mengatur waktu dalam kode, Anda memiliki teknik berbeda yang tersedia tergantung pada bahasa pemrograman Anda. Nilai dinyatakan sebagai System.TimeSpan untuk C# dan Visual Basic, atau Windows.Foundation.TimeSpan untuk ekstensi komponen Visual C++ (C++/CX). Mungkin cara termampu untuk menghasilkan nilai System.TimeSpan yang sesuai adalah SelectedTime
dengan menggunakan metode statis TimeSpan.Parse. Gunakan string dalam bentuk Hh:Mm (jam:menit).
Baik diatur dalam kode atau XAML, kelas TimePicker memiliki logika pemaksaan untuk nilai yang dipertahankannya saat Anda mencoba mengaturnya. Nilai hari apa pun diabaikan. Nilai detik diabaikan (misalnya detik di atas 30 tidak dibulatkan ke atas hingga menit berikutnya). Detik pecahan diabaikan. Nilai tidak membungkus (misalnya nilai "24:00" tidak valid.) Nilai minimum dalam TimeSpan
adalah waktu 0 (00:00, tengah malam) dan nilai maksimum adalah 23:59. Nilai di luar rentang melempar pengecualian, tetapi tergantung pada spesifikasi pengecualian mungkin berasal dari TimeSpan
konstruksi daripada dari validasi dan paksaan SelectedTime
.
Untuk mengatur SelectedTime
nilai dalam ekstensi komponen Visual C++ (C++/CX), Anda mengatur Duration
bidang struktur TimeSpan .
Duration
menentukan waktu dalam 100 unit nanodetik; tulis logika Anda sendiri untuk mengonversi ke dan dari jam:menit representasi.
Nilai apa pun yang Anda tetapkan dalam SelectedTime
kode atau XAML menentukan nilai awal yang ditampilkan dalam kontrol. Di aplikasi saat runtime, nilai tersebut biasanya diatur oleh pengguna di flyout pemilih waktu. Waktu yang dipilih oleh pengguna diatur dan peristiwa SelectedTimeChanged terjadi ketika pengguna membuat perubahan dan menekan tombol tanda centang di flyout pemilih waktu untuk menerapkan pilihan mereka.