1

我正在使用确定的 ProgressBar 控件来指示 ListView 中块的完整性(例如,与最大值相比,在一个级别中得分的点数。

我可以更改进度条的 Foreground 属性以更改进度条“已完成”部分的颜色,但我不能更改进度条不完整部分的颜色。

例如,如果 Value 是 5,Maximum 是 20,Width 是 100 px,那么从 0 到 25 的线的颜色是红色,而从 25 到 100 的线的颜色是我想要改变的。

4

1 回答 1

2

您可以通过设置 ProgressBar 控件的 Background 属性来稍微检查颜色。如果您这样做,您将看到不完整部分的颜色是您定义的颜色的阴影,因为在不完整部分上设置了一些不透明度。如果您想要纯色而不是设置不透明度的颜色,那么您将不得不考虑改变控件本身的样式。

如果您在 Expression Blend 中打开页面,然后右键单击 ProgressBar 控件并选择编辑模板 > 编辑副本...,则将创建一个新样式。您要编辑的样式部分如下:-

<Rectangle x:Name="ProgressBarTrack" Fill="{TemplateBinding Background}" Height="4" Opacity="0.1"/>

如果您更改不透明度值或将其全部删除,则允许使用纯色。

于 2012-06-15T08:16:20.243 回答