2013-06-27 2 views
1

Я создал настраиваемый Usercontrol на основе элемента управления Calendar. Я хотел бы использовать этот календарь в качестве элемента управления всплывающей в DatePicker, хотя это не стиль, таким образом:Пользовательский календарь WPF внутри DatePicker

CalendarStyle="{StaticResource customCalendar}" 

не работает. Есть ли все-таки сделать это без создания целого пользовательского DatePicker?

+0

Вы хотите изменить «стиль» календаря, который находится в 'DatePicker'? –

+0

Я создал календарь, который включает дополнительные кнопки и stackPanel. Я сделал это с помощью настраиваемого элемента управления. Если есть способ сделать это только со стилем, я бы более чем счастливо это сделал, но я не знаю, как это сделать. – CThin

+0

Чтобы точно указать свой код пользовательского элемента управления. Если стиль календаря «нормальный», он устанавливается без проблем. –

ответ

1

Я нашел решение, на самом деле я могу легко сделать это с помощью стилизации.

  <Style x:Key="CustomCalendar" TargetType="Calendar"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type Calendar}"> 
        <StackPanel HorizontalAlignment="Center" Name="PART_Root" Background="LightGray"> 
         <CalendarItem Background="{TemplateBinding Control.Background}" BorderBrush="{TemplateBinding Control.BorderBrush}" BorderThickness="{TemplateBinding Control.BorderThickness}" Name="PART_CalendarItem" Style="{TemplateBinding Calendar.CalendarItemStyle}"/> 
         . 
         . 
         . 
         . 
         . 
        </StackPanel> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style>