我有一个ProgressbarStyle,我在其中向Text“DeterminateRoot”添加一个TextBlock-Control。这个TextBlock应该显示一个状态文本,我在CodeBehind中手动更改,这已经有效了。
这是我的风格的一部分,我在标准的ProgressbarStyle中更改了:
<Grid x:Name="DeterminateRoot" Margin="1"> <Rectangle x:Name="ProgressBarIndicator" Fill="{TemplateBinding Foreground}" HorizontalAlignment="Left" Margin="{TemplateBinding BorderThickness}" RadiusY="1.5" RadiusX="1.5" StrokeThickness="0.5"/> <TextBlock x:Name="txtbStatusText" Text="5 of 20" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="Black" FontWeight="Bold" FontFamily="Arial" FontSize="11"></TextBlock> </Grid>
我的问题是:如何在不更改进度条的标准颜色的情况下将TextBlock-Text的Foregroundcolor更改为黑色?因为,当我删除Rectangle的Fill-Property(ProgressBarIndicator)时,我可以更改TextBlock的ForegroundColor,但是我想保留Progressbar的标准视图!
提前感谢您的回答!
最诚挚的问候 Dougy
答案 0 :(得分:0)
正如您所说,如果您将booth属性设置为相同的 TemplateBinding ,则您的文本将不可见。您必须创建另一个属性,以便您可以独立管理它们。
在代码中创建类型为画笔的依赖项属性,然后将TextBlock模板绑定到该属性。