我希望使用标准按钮背景创建一些上下箭头按钮,但箭头是黑色的。
在WPF中,最好的实现方式是什么?
马尔科姆
谈论这个主题时,不提到几何迷你语言(或路径标记语法)的更紧凑的形状定义就不完整:
<Button>
<Path Fill="Black" Data="M 0 6 L 12 6 L 6 0 Z"/>
</Button>
<Button>
<Path Fill="Black" Data="M 0 0 L 6 6 L 12 0 Z"/>
</Button>
首先,描述了移动到0,6行,然后绘制从12,6到6,0的线条,并封闭形状(Z)。
此外,还有一种曲线语法。
现在首选的方法是使用Segoe UI Symbol,它替代了Marlett并提供了许多有用的字形。向上和向下将会是:
<Button FontFamily="Segoe UI Symbol" Content=""/>
<Button FontFamily="Segoe UI Symbol" Content=""/>
呈现为:
这种字体已经预安装在所有的Windows 7和8版本中。
自Windows 10发布以来,Segoe UI Symbol字体被认为是一种遗留资源,应该在所有新项目中用Segoe MDL2 Assets替换,如此处所述。
Polygon
,代表您的上下三角形,并将其设置为按钮的内容:<Button>
<Polygon
Points="300,200 450,200 375,300 300,200"
Stroke="Black">
<Polygon.Fill>
<SolidColorBrush Color="Black" />
</Polygon.Fill>
</Polygon>
</Button>
你可以微调这些参数以绘制不同的图形,但通常这是您用于基本几何图形的XAML。
<Button >
<Polygon Stretch="Fill" Fill="Black" Points="0,0 0,30 0,10 30,10 30,-10 45,10 30,30 30,20 0,20 0,0 30,0 30,10 0,10" />
</Button>