如何使用图像中的ProgressBar Border和WPF中图像透明区域中的进度指示器

时间:2015-08-02 05:26:39

标签: wpf image xaml progress-bar

我有一张照片(曲目)像这样 -

enter image description here

你可以看到的白色部分实际上是透明的。我想根据它的进展填充颜色(指示器),像这样 -

enter image description here

但问题是,每当我在Blend中设置图像(Track)时," Progress Color" (指标)实际上掩盖了它的边界(轨道) -

enter image description here

为方便起见,我附上了代码 -

    <Window x:Class="WpfApplication3.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">


        <ProgressBar Value="50" Height="50" Width="450" Foreground="Red" BorderThickness="10" Background="{x:Null}">
            <ProgressBar.BorderBrush>
                <ImageBrush ImageSource="MOyml.png" Stretch="UniformToFill"/>
            </ProgressBar.BorderBrush>          
        </ProgressBar>   
</Window>

有没有解决方案?

2 个答案:

答案 0 :(得分:0)

您需要修改控件模板,以便填充在正确的位置。

答案 1 :(得分:0)

以下是处理此操作的适当教程

Use shape in a progressbar