Я оформляю элемент управления Calendar в WPF.В настоящее время у меня есть созданный стиль, но теперь он больше не переключается автоматически на следующий месяц, когда я выбираю дату следующего месяца в представлении текущего месяца.Например.В представлении за октябрь выберите 1 ноября, он останется в октябре, но я бы хотел автоматически переключиться на ноябрь, как это делает календарь по умолчанию.Я не уверен, почему он потерял эту функциональность.
Еще один обходной путь - отключение или предотвращение нажатия на НЕАКТИВНЫЕ дни месяца.Я пробовал это
<Rectangle x:Name="InactiveBackground"
Opacity="1"
IsHitTestVisible="False"
Visibility="Hidden"
RadiusX="1"
RadiusY="1">
<Rectangle.Stroke>
<SolidColorBrush Color="Transparent" />
</Rectangle.Stroke>
<Rectangle.Fill>
<SolidColorBrush Color="Transparent" />
</Rectangle.Fill>
</Rectangle>
затем
<VisualState Name="Inactive">
<Storyboard>
<ColorAnimation Duration="0"
Storyboard.TargetName="NormalText"
Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)" To="Transparent" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="InactiveBackground"
Storyboard.TargetProperty="Visibility"
Duration="0">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
Но ishittestvisible = false, похоже, не работает, так как я все еще могу выбрать неактивные даты.