wpf - 为 WPF 日历使用大字体和按钮
问题描述
我需要为 WPF 日历的日期数字、月份、星期几标题和上一个/下一个按钮提供大字体。这是一个没有鼠标的触摸屏应用程序。
做这个的绝对简单的最小 xaml 代码是什么?我不想要漂亮或聪明。我只想要大字体。大到足以让机械师找到并按下一个肮脏、多尘、涂有油脂的屏幕。
我尝试过的一件事如下。那没有用。我不明白,也不想。我没有时间去追查所有这些模板样式混搭。老实说,我所追求的只是有人做饭然后给我。我的时间不多了,我只想把这东西放在我的后视镜中。
Style TargetType="{x:Type Calendar}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Calendar}">
<CalendarItem x:Name="PART_CalendarItem"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"/>
<ControlTemplate.Triggers>
<Trigger Property="IsFocused" Value="true">
<Setter TargetName="PART_CalendarItem" Property="Padding" Value="0,0,0,0" />
<Setter TargetName="PART_CalendarItem" Property="Background" Value="Yellow" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
解决方案
我没有看到您在提供的 XAML 中更改 FontSize,但无论如何。我刚试过,看起来默认模板无论如何都会忽略它。可能最好的方法是重新定义模板,但我同意,这可能是很多初始工作。我也很同情...
因此,如果您只需要使控件更大,那么一个简单的方法就是向 LayoutTransform 添加一个 Scale。例如,要将大小加倍,请尝试:
<Style TargetType="{x:Type Calendar}">
<Setter Property="LayoutTransform">
<Setter.Value>
<TransformGroup>
<ScaleTransform ScaleX="2" ScaleY="2"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Setter.Value>
</Setter>
</Style>
推荐阅读
- tensorflow - 通过减少类别来提高模型的速度和准确性
- jenkins - Jenkins Job-Gradle 构建
- java - Spring boot ldap 身份验证错误 [LDAP:错误代码 49 - 凭据无效]
- square-root - 使用常规距离还是平方距离更快?
- excel - 检查、剪切和粘贴、删除行、移动
- php - 如何将 POST 参数从 javascript 发送到 php
- node.js - Windows-build-tools 安装
- url - 如何使用 AppleScript 从电子邮件中检索 URL?
- javascript - 切换值未作为参数传入 url
- python - 如何在 Kivy 开发的应用程序上从剪贴板按钮编程复制到和粘贴