TimePicker
.NET 多平臺應用程式 UI (.NET MAUI) TimePicker 會叫用平台的時間選擇器控件,並可讓您選取時間。
TimePicker 會定義下列屬性:
Time
類型TimeSpan
為 ,選取的時間預設為TimeSpan
0。 此TimeSpan
類型表示自午夜以來的時間持續時間。Format
類型string
為,這是 預設為 「t」 的標準 或 自定義 .NET 格式字串,這是短時間模式。TextColor
型 Color別 為 ,用來顯示選取時間的色彩。FontAttributes
型FontAttributes
別為 ,預設為FontAtributes.None
。FontFamily
型string
別為 ,預設為null
。FontSize
型double
別 為 ,預設為 -1.0。CharacterSpacing
類型double
為 的 ,是文字字元 TimePicker 之間的間距。
所有這些屬性都受到 BindableProperty 物件支援,這表示可以設定樣式,而且屬性可以是數據系結的目標。 屬性 Time
的默認系結模式 BindingMode.TwoWay
為 ,這表示它可以是使用Model-View-ViewModel (MVVM) 模式之應用程式中數據系結的目標。
注意
TimePicker不包含事件,表示新的選取Time
值。 如果您需要收到此通知,您可以新增事件的事件處理程式 PropertyChanged
。
此外, TimePicker 定義 TimeSelected 事件,這會在選取的時間變更時引發。 事件 TimeChangedEventArgs 隨附 TimeSelected
的物件具有 NewTime
和 OldTime
屬性,分別指定新舊時間。
建立 TimePicker
Time
在 XAML 中指定 屬性時,值會轉換成 TimeSpan
並經過驗證,以確保毫秒數大於或等於 0,且時數小於 24。 時間元件應該以冒號分隔:
<TimePicker Time="4:15:26" />
如果 的 BindingContext
TimePicker 屬性設定為 viewmodel 的實例,其中包含名為 SelectedTime
類型的屬性TimeSpan
(例如),您可以具現化TimePicker如下:
<TimePicker Time="{Binding SelectedTime}" />
在此範例中,屬性 Time
會初始化為 SelectedTime
viewmodel 中的 屬性。 Time
由於屬性具有的TwoWay
系結模式,因此用戶選取的任何新時間都會自動傳播至 viewmodel。
在程式代碼中 Time
,您可以將 屬性初始化為 類型的 TimeSpan
值:
TimePicker timePicker = new TimePicker
{
Time = new TimeSpan(4, 15, 26) // Time set to "04:15:26"
};
如需設定字型屬性的詳細資訊,請參閱 字型。
TimePicker 和版面配置
您可以使用不受限制的水平版面設定選項, 例如 Center
、 Start
或 End
搭配 TimePicker:
<TimePicker ···
HorizontalOptions="Center" />
不過,不建議這樣做。 根據屬性的 Format
設定,選取的時間可能需要不同的顯示寬度。 例如,“T” 格式字串會使 TimePicker 檢視以長格式顯示時間,而 “4:15:26 AM” 需要比 “4:15 AM” 短時間格式 (“t”) 更大的顯示寬度。 視平臺而定,此差異可能會導致 TimePicker 檢視在版面配置中變更寬度,或讓顯示器遭到截斷。
提示
最好將預設設定與搭配TimePicker使用,而不是在放入GridTimePicker儲存格時使用的寬度。Fill
HorizontalOptions
Auto
平台差異
本節描述 控件 TimePicker 的平臺特定差異。
在Android上 Format
,控件會尊重和顯示屬性。 不過,當按下 控件來顯示選擇器控件時,只能變更一天中的小時、分鐘和時間。