2013-07-07 3 views
0

Я определил 4 ToggleSwitch, как это (скопировано из примера). Должен ли я использовать DataTemplate ?? Теперь я хочу изменить значение времени в TimePicker. Как получить доступ к time_picker и изменить контент? Большое спасибо!Windows Phone: Как изменить время в TimePicker из кода C#

   <toolkit:ToggleSwitch Name="sleep_mode" Grid.Row="1" Header="{Binding Path=LocalizedResources.Sleep_Mode, Source={StaticResource LocalizedStrings}}" Checked="fetch_sleepmode_Checked" Unchecked="fetch_sleepmode_UnChecked" Click="OnClicked"> 
       <toolkit:ToggleSwitch.HeaderTemplate> 
        <DataTemplate> 
         <ContentControl FontSize="{StaticResource PhoneFontSizeLarge}" Foreground="{StaticResource PhoneForegroundBrush}" Content="{Binding}"/> 
        </DataTemplate> 
       </toolkit:ToggleSwitch.HeaderTemplate> 
       <toolkit:ToggleSwitch.ContentTemplate> 
        <DataTemplate> 
         <StackPanel> 
          <StackPanel Orientation="Horizontal"> 
           <TextBlock Text="{Binding Path=LocalizedResources.Status, Source={StaticResource LocalizedStrings}}" FontSize="{StaticResource PhoneFontSizeSmall}"/> 
           <ContentControl HorizontalAlignment="Left" FontSize="{StaticResource PhoneFontSizeSmall}" Content="{Binding}"/> 
          </StackPanel> 
          <TextBlock Text="{Binding Path=LocalizedResources.SleepMode, Source={StaticResource LocalizedStrings}}" TextWrapping="Wrap" FontSize="{StaticResource PhoneFontSizeSmall}" Foreground="{StaticResource PhoneSubtleBrush}" Width="360"/> 
          **<toolkit:TimePicker x:Name="time_picker" ValueChanged="TimePicker_ValueChanged"/>** 
         </StackPanel> 
        </DataTemplate> 
       </toolkit:ToggleSwitch.ContentTemplate> 
      </toolkit:ToggleSwitch> 

ответ

1

В вашем случае, я не понимаю, почему вы даже беспокоиться настройки ContentTemplate для ToggleSwitch, поскольку ни обычай связывания присутствует (например, к коллекции экземпляра конкретного).

Вместо этого настройте содержимое напрямую и измените свойства TimePicker таким же образом - через именованную ссылку.

На боковой ноте - зачем вам нужен TimePicker внутри ToggleSwitch?

+0

Хорошо, вот что я подозревал, почему в этом примере сначала нужно ContentTemplate. Я пытался удалить, но не работал. Но теперь я сделал это снова, и он отлично работает. Благодаря! О, причина, по которой я устанавливаю timePicker внутри ToggleSwitch, заключается в том, что я хочу выровнять timepicker с текстом toggleswitch. Немного глупо, но работает для меня :) – thsieh

Смежные вопросы