TimeField
逐段编辑的时间输入框,即 uikit:TimeField。
示例可交互
Live demo unavailable
<WrapPanel ItemSpacing="12" LineSpacing="12">
<uikit:TimeField Time="09:30" />
<uikit:TimeField Time="09:30:15" Precision="Second" />
<uikit:TimeField Time="21:05" HourCycle="H12" />
<uikit:TimeField />
</WrapPanel>用法
uikit:TimeField 就是时间输入框中的输入框,可逐段编辑。它是一个 Tab 停靠点;同一时刻只有一个片段被选中,并在输入框拥有焦点时显示选中状态。上、下方向键步进所选片段并在其内部循环,左、右方向键在片段之间移动,Tab 在离开输入框之前会先移动到下一个片段。数字会填充片段,一旦再输入一位数字也无法容纳就前进到下一位(输入 7 得到 07;输入 1 则等待第二位数字)。A 和 P 设置上下午标识,Backspace 或 Delete 重置该片段。点击会选中指针下的片段。
Time 是一个双向绑定的 TimeSpan?;没有值时各片段显示短横线,输入则从 00:00 开始。Precision 为 Minute 或 Second,HourCycle 为 H23 或 H12(带上下午片段)。Changed 事件报告用户的编辑,而不是应用设置的值,SelectedSegment 是当前选中的片段。尺寸(xsmall、small、large)、无效边框(DataValidationErrors)和禁用外观都沿用时间输入框。
示例
一个小尺寸和一个大尺寸输入框,一个禁用的和一个无效的。
Live demo unavailable
<WrapPanel ItemSpacing="12" LineSpacing="12">
<uikit:TimeField Time="09:30" Classes="small" />
<uikit:TimeField Time="09:30" IsEnabled="False" />
<uikit:TimeField Time="21:05" DataValidationErrors.Errors="{x:Static demos:ValidationErrors.OutsideBusinessHours}" />
<uikit:TimeField Time="09:30" Classes="large" />
</WrapPanel>