如何解决调整WPF材质设计图标的滴答声
我有这个UI,它使用了漂亮的Material Design In XAML及其图标包。
我想调整图形线条的滴答声,使像本例中的小图标更细。
<ListBoxItem>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="AccountsAddOutline" />
<TextBlock Margin="10,0">Add user</TextBlock>
</StackPanel>
</ListBoxItem>
<ListBoxItem>
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="DeleteForeverOutline" />
<TextBlock Margin="10,0">Delete</TextBlock>
</StackPanel>
</ListBoxItem>
我不知道该库的API是否公开此属性,但是可以确保滴答度是可调整的,因为如果您增大图标的大小,则该行也会变成滴答声,如下例所示:
<materialDesign:PackIcon Kind="AccountsAddOutline" Height="40" Width="40" />
结果:
解决方法
您无法真正调整厚度。 PackIcon
的模板在Path
中实现为ViewBox
并对其进行拉伸和缩放:
<ControlTemplate TargetType="{x:Type local:PackIcon}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<Viewbox FlowDirection="{TemplateBinding FlowDirection}">
<Canvas Width="24" Height="24">
<Path Data="{Binding Data,RelativeSource={RelativeSource TemplatedParent}}"
Fill="{TemplateBinding Foreground}" />
</Canvas>
</Viewbox>
</Border>
</ControlTemplate>
您可以通过创建没有Viewbox
的自定义模板来摆脱扩展的麻烦。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。