Xamarin表单:UWP和win8.1的自定义进度条渲染器

时间:2017-01-16 17:44:58

标签: c# xamarin uwp xamarin.forms

您好我正在使用PCL项目在XAMARIN FORMS中开发应用程序。我正在使用进度条。我需要改变填充区域的颜色。为此,我尝试了颜色属性,但它没有显示进度条的颜色属性。因此,我为进度条创建了一个自定义渲染器,以便我可以设置其颜色,但我无法找到任何属性来更改其在UWP中的颜色。 任何人都可以建议我改变所有平台的填充区域颜色,特别是UWP和Windows 8.1。

For android and ios I have used this

1 个答案:

答案 0 :(得分:1)

更新:您是否尝试为UWP创建自定义渲染器并更改前景颜色?

var pb = Element as Windows.UI.Xaml.Controls.ProgressBar();
pb.Foreground = new SolidColorBrush(Windows.UI.Colors.Red);

同样对于UWP,您可以覆盖ProgressBar的默认样式。 只需从here获取默认样式并替换前景值,例如:

<Setter Property="Foreground" Value="Red" />

将此样式放在U.xP特定项目中的App.xaml中

<Application
    x:Class="Xamarin.Prism.UWP.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    RequestedTheme="Light">

    <Application.Resources>

        <!-- Default style for Windows.UI.Xaml.Controls.ProgressBar -->
        PUT YOUR MODIFIED STYLE HERE

    </Application.Resources>

</Application>

现在所有ProgressBar控件都将使用您的自定义颜色