Я пытаюсь неправильно использовать элемент управления TimePicker в качестве средства выбора временного интервала, задав для свойства ClockIdentifier значение 24HourClock (24-часовой диапазон вполне подходит для моих нужд).
Единственная проблема заключается в том, что я не думаю, что пользовательский интерфейс достаточно ясен без заголовков на Flyout, чтобы сказать, что первый столбец - это часы, а второй - минуты.
Я успешно настроил TimePickerFlyoutPresenter, добавив свой собственный стиль к элементу Application / Application.Resources / ResourceDictionary моего App.xaml, но это применимо ко всем отображаемым TimePickerFlyoutPresenter. Я не всегда неправильно использую элемент управления TimePicker, поэтому я пытаюсь найти способ выборочного применения этого шаблона.
Как я могу выбрать этот шаблон вместо того, чтобы применять его к каждому TimePickerFlyoutPresenter, отображаемому на TimePicker? Я создаю класс TimePicker в коде, а не в XAML, если это имеет значение.





TimePickerFlyoutPresenter используется в коде TimePicker. Вы не смогли найти никаких ключевых слов о TimePickerFlyoutPresenter в xaml-коде TimePicker. Если вы настроите стиль TimePickerFlyoutPresenter в Application.Resources, он будет глобальным. И я не думаю, что размещение всплывающей подсказки в TimePickerFlyoutPresenter - хорошая практика. Этот дизайн может не давать пользователю самую прямую информацию в первый раз. Я предлагаю вам поместить всплывающую подсказку в HeaderTemplate.
<DataTemplate x:Key = "TimerDateTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width = "1*"/>
<ColumnDefinition Width = "1*"/>
</Grid.ColumnDefinitions>
<TextBlock TextAlignment = "Center" Text = "Hour" FontSize = "13"/>
<TextBlock Grid.Column = "1" TextAlignment = "Center" Text = "minute" FontSize = "13"/>
</Grid>
</DataTemplate>
Применение
<TimePicker ClockIdentifier = "24HourClock" HeaderTemplate = "{StaticResource TimerDateTemplate}">
Эмм, вы могли бы дать ключ к стилю TimePickerFlyoutPresenter, но его можно использовать напрямую в TimePicker.
Спасибо за Ваш ответ! Я вижу, что пользователю было бы полезно знать, что он выбирает часы / минуты, не открывая сначала всплывающее окно. Для пользы всех, кто может найти этот вопрос и имеет более законный вариант использования; нет возможности настроить TimePickerFlyoutPresenter без глобального применения стиля?