2017-02-16 2 views
0

私のDatePicker上のカレンダーは、CalendarHeaderButtonを切り離して読めるようにしています。 XAMLスタイルを削除して標準のカレンダーを使用しようとしましたが、問題はまだ残ります。誰かがこれを修正する方法を知っていますか?申し訳ありませんが重複している場合、私はかなりの時間をかけて検索しました!ここでHeaderButtonを切り捨てるDatePickerのカレンダーコントロールですか?

Calendar Header Missing

これまでのところ、私のXAMLです:

<Style x:Key="{x:Type Calendar}" TargetType="{x:Type Calendar}"> 
     <Setter Property="Background" Value="{StaticResource Back75}"/> 
     <Setter Property="Foreground" Value="{StaticResource Text100}"/> 

     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="{x:Type Calendar}"> 
        <!-- Wrapping in ViewBox will enlarge calendar of that size.--> 
        <Viewbox Height="200" 
         Width="200"> 
         <CalendarItem x:Name="PART_CalendarItem" 
            Background="{TemplateBinding Background}" 
            BorderBrush="{TemplateBinding BorderBrush}" 
            BorderThickness="{TemplateBinding BorderThickness}"/> 
        </Viewbox> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

すべてのヘルプは高く評価されます。ありがとうございました!

答えて

1

この問題の原因が見つかりました。 「HeaderButton」は「Button」を使用することが判明しました。私は 'button'に高さを '20'に設定し、 '25'にする必要があるというデフォルトスタイルを持っていました。私は手動でこれを「CalendarItem」スタイルで変更し、ボタンの高さを25にハードコードしました。

1

私はあなたのスタイルを試してみましたが、それ自体はうまく動作します。それは他の場所から来なければなりません。メインウィンドウのカレンダーだけで新しいプロジェクトで自分のスタイルを使用しようとしましたか?

さらにヘルプが必要な場合は、問題の原因となる最小限のコードを投稿する必要があります。

私は、ViewBoxでカレンダーをラップするのではなく、スタイルを使用してViewBoxにカレンダーアイテムをラップする理由が不思議です。
なぜ、ViewBoxのサイズをハードコード200-200に設定するのですか?

+0

これはリソース辞書にあり、すべてが一律であるためにスタイル内のビューボックスにカレンダーアイテムをラッピングしています - なぜこれは問題だろうか? ビューボックスのサイズをハードコーディングする際の問題は何ですか?それが私がビューボックスを使用している理由です - 日付/時刻ピッカーのサイズを拡大するには – Yokomoko

+0

私はリソース辞書のスタイルを使用することが問題だとは言いませんが、それは良いことだと思います。私が言っていることは、あなたのスタイルは問題ではないということです。 ちょうどグリッドを含む最小限のウィンドウと自分のスタイルを使ったコールカレンダーを試してみると、次のようなことができます:[calendar screen](http://img11.hostingpics.net/pics/442445calendarscreen.png)。私はyout問題がどこかにあると思う。 – Tesseract

関連する問題