Отрезание стиля DatePicker - PullRequest
       2

Отрезание стиля DatePicker

0 голосов
/ 17 февраля 2011

Я применил следующий стиль к свойству CalendarStyle DatePicker:

    <Style x:Key="myStyle" TargetType="Calendar" >
        <Setter Property="Height" Value="Auto" />
        <Setter Property="Width" Value="Auto" />
        <Setter Property="RenderTransform">
            <Setter.Value>
                <TransformGroup>
                    <ScaleTransform ScaleX="1.5" ScaleY="1.5"/>
                    </TransformGroup>
                    </Setter.Value>
                    </Setter>
    </Style>

но календарь, который открывается, обрезан справа. Есть идеи почему?

Ответы [ 3 ]

2 голосов
/ 31 декабря 2011

Попробуйте это:

<Style x:Key="myStyle" TargetType="Calendar" >
    <Setter Property="Height" Value="Auto" />
    <Setter Property="Width" Value="Auto" />
    <Setter Property="LayoutTransform">
        <Setter.Value>
            <TransformGroup>
                <ScaleTransform ScaleX="1.5" ScaleY="1.5"/>
            </TransformGroup>
        </Setter.Value>
    </Setter>
</Style>
1 голос
/ 20 декабря 2011

Мне удалось успешно изменить размер календаря в DatePicker, изменив Шаблон календаря и поместив его в ViewBox. При этом Календарь подберет размер, предоставленный ViewBox. Я предоставил решение в своей записи в блоге здесь: Изменение размера календаря в DatePicker

Надеюсь, это помогло. :)

1 голос
/ 17 февраля 2011

Я собираюсь сделать предположение, но я не совсем уверен.

Я предполагаю, что Календарь содержится в сетке, холсте или каком-либо другом контейнере и, естественно, заполняет контейнер или просто очень близок по размеру. Когда вы применяете RenderTransform, который масштабирует Календарь на 1,5, контейнер остается того же размера, но Календарь теперь в 1,5 раза больше и, следовательно, превышает размер контейнера.

Предлагаемое решение:

  1. также преобразуйте контейнер; или
  2. изменить настройки так, чтобы Календарь просто заполнял контейнер без RenderTransform; или
  3. вы также можете поместить Календарь внутри ScrollView, чтобы Календарь мог быть настолько большим, насколько ему нужно - вы всегда можете прокрутить, чтобы увидеть нужную вам часть.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...