summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.WinRT.Phone
diff options
context:
space:
mode:
authorPaul DiPietro <pauldipietro@users.noreply.github.com>2017-03-14 06:00:10 -0500
committerRui Marinho <me@ruimarinho.net>2017-03-14 11:00:10 +0000
commit83fd2751e6939eb76a4ecd8b098144afaa2d289f (patch)
treec0875957260af9107e49b09f82911893157716f3 /Xamarin.Forms.Platform.WinRT.Phone
parent05f0f7610f197ccc862e5a815376c3cd93d0efe8 (diff)
downloadxamarin-forms-83fd2751e6939eb76a4ecd8b098144afaa2d289f.tar.gz
xamarin-forms-83fd2751e6939eb76a4ecd8b098144afaa2d289f.tar.bz2
xamarin-forms-83fd2751e6939eb76a4ecd8b098144afaa2d289f.zip
[WinRT/UWP] Fix Opacity behavior with ProgressBar (#695)
* [WinRT/UWP] Fix Opacity behavior with ProgressBar * Update .nuspec * Further update .nuspec * Adjust .csproj line to fix Mac build
Diffstat (limited to 'Xamarin.Forms.Platform.WinRT.Phone')
-rw-r--r--Xamarin.Forms.Platform.WinRT.Phone/FormsProgressBarStyle.xaml325
-rw-r--r--Xamarin.Forms.Platform.WinRT.Phone/PhoneResources.xaml1
-rw-r--r--Xamarin.Forms.Platform.WinRT.Phone/Xamarin.Forms.Platform.WinRT.Phone.csproj4
3 files changed, 330 insertions, 0 deletions
diff --git a/Xamarin.Forms.Platform.WinRT.Phone/FormsProgressBarStyle.xaml b/Xamarin.Forms.Platform.WinRT.Phone/FormsProgressBarStyle.xaml
new file mode 100644
index 00000000..fec83e63
--- /dev/null
+++ b/Xamarin.Forms.Platform.WinRT.Phone/FormsProgressBarStyle.xaml
@@ -0,0 +1,325 @@
+<ResourceDictionary
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:winRt="using:Xamarin.Forms.Platform.WinRT">
+
+ <!-- Default style for Windows.UI.Xaml.Controls.ProgressBar -->
+ <Style x:Key="FormsProgressBarStyle" TargetType="winRt:FormsProgressBar">
+ <Setter Property="Foreground" Value="{ThemeResource ProgressBarForegroundThemeBrush}" />
+ <Setter Property="Background" Value="{ThemeResource ProgressBarBackgroundThemeBrush}" />
+ <Setter Property="BorderBrush" Value="{ThemeResource ProgressBarBorderThemeBrush}" />
+ <Setter Property="BorderThickness" Value="{ThemeResource ProgressBarBorderThemeThickness}" />
+ <Setter Property="Maximum" Value="100" />
+ <Setter Property="MinHeight" Value="{ThemeResource ProgressBarThemeMinHeight}" />
+ <Setter Property="IsTabStop" Value="False" />
+ <Setter Property="VerticalAlignment" Value="Center" />
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="ProgressBar">
+ <Grid>
+ <VisualStateManager.VisualStateGroups>
+ <VisualStateGroup x:Name="CommonStates">
+ <VisualStateGroup.Transitions>
+ <VisualTransition From="Updating" To="Determinate">
+ <Storyboard>
+ <RepositionThemeAnimation TargetName="ProgressBarIndicator" FromHorizontalOffset="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.IndicatorLengthDelta}" />
+ </Storyboard>
+ </VisualTransition>
+ <VisualTransition From="Paused" To="Determinate">
+ <Storyboard>
+ <DoubleAnimation Storyboard.TargetName="ProgressBarIndicator"
+ Storyboard.TargetProperty="Opacity"
+ To="1"
+ Duration="0:0:0.25" />
+ </Storyboard>
+ </VisualTransition>
+ <VisualTransition From="Indeterminate">
+ <Storyboard>
+ <FadeInThemeAnimation TargetName="EllipseGrid" />
+ </Storyboard>
+ </VisualTransition>
+ </VisualStateGroup.Transitions>
+ <VisualState x:Name="Determinate" />
+ <VisualState x:Name="Updating" />
+ <VisualState x:Name="Indeterminate">
+ <Storyboard RepeatBehavior="Forever">
+ <DoubleAnimation Storyboard.TargetName="EllipseGrid"
+ Duration="0:0:3.917"
+ Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)"
+ From="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.ContainerAnimationStartPosition}"
+ To="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.ContainerAnimationEndPosition}" />
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="E1">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <SplineDoubleKeyFrame KeyTime="0:0:1" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" KeySpline="0.4,0,0.6,1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" />
+ <SplineDoubleKeyFrame KeyTime="0:0:3" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationEndPosition}" KeySpline="0.4,0,0.6,1" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="E2">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.167" Value="0" />
+ <SplineDoubleKeyFrame KeyTime="0:0:1.167" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" KeySpline="0.4,0,0.6,1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.167" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" />
+ <SplineDoubleKeyFrame KeyTime="0:0:3.167" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationEndPosition}" KeySpline="0.4,0,0.6,1" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="E3">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.333" Value="0" />
+ <SplineDoubleKeyFrame KeyTime="0:0:1.333" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" KeySpline="0.4,0,0.6,1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.333" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" />
+ <SplineDoubleKeyFrame KeyTime="0:0:3.333" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationEndPosition}" KeySpline="0.4,0,0.6,1" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="E4">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0" />
+ <SplineDoubleKeyFrame KeyTime="0:0:1.5" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" KeySpline="0.4,0,0.6,1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.5" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" />
+ <SplineDoubleKeyFrame KeyTime="0:0:3.5" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationEndPosition}" KeySpline="0.4,0,0.6,1" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="E5">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.667" Value="0" />
+ <SplineDoubleKeyFrame KeyTime="0:0:1.667" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" KeySpline="0.4,0,0.6,1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.667" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationWellPosition}" />
+ <SplineDoubleKeyFrame KeyTime="0:0:3.667" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseAnimationEndPosition}" KeySpline="0.4,0,0.6,1" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="B1">
+ <EasingDoubleKeyFrame KeyTime="0" Value="-50" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3" Value="100" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="B2">
+ <EasingDoubleKeyFrame KeyTime="0" Value="-50" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.667" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.167" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.167" Value="100" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="B3">
+ <EasingDoubleKeyFrame KeyTime="0" Value="-50" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.833" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.333" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.333" Value="100" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="B4">
+ <EasingDoubleKeyFrame KeyTime="0" Value="-50" />
+ <EasingDoubleKeyFrame KeyTime="0:0:1" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.5" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.5" Value="100" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" Storyboard.TargetName="B5">
+ <EasingDoubleKeyFrame KeyTime="0" Value="-50" />
+ <EasingDoubleKeyFrame KeyTime="0:0:1.167" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:2.667" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.667" Value="100" />
+ </DoubleAnimationUsingKeyFrames>
+ <!-- The ElementOpacity on FormsProgressBar is used in place of Opacity so that the user may specify
+ a particular value they might wish to use, and also prevents unintended interactions between
+ Element.Opacity and Control.Opacity. -->
+ <DoubleAnimation Storyboard.TargetName="EllipseGrid"
+ Storyboard.TargetProperty="Opacity"
+ To="{Binding ElementOpacity, RelativeSource={RelativeSource TemplatedParent}}"
+ Duration="0" />
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="E1"
+ Storyboard.TargetProperty="Fill">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ProgressBarIndeterminateForegroundThemeBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="E2"
+ Storyboard.TargetProperty="Fill">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ProgressBarIndeterminateForegroundThemeBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="E3"
+ Storyboard.TargetProperty="Fill">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ProgressBarIndeterminateForegroundThemeBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="E4"
+ Storyboard.TargetProperty="Fill">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ProgressBarIndeterminateForegroundThemeBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="E5"
+ Storyboard.TargetProperty="Fill">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource ProgressBarIndeterminateForegroundThemeBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <!-- Both FadeOutThemeAnimation and a DoubleAnimation on Opacity are necessary
+ here. The FadeOutThemeAnimation is necessary in the Indeterminate state so
+ that we can do a FadeInThemeAnimation when transitioning back to the
+ Determinate state. The DoubleAnimation on Opacity is necessary to hide the
+ DeterminateRoot immediately so that it does not slowly fade out during each
+ iteration of the Indeterminate state animation. -->
+ <FadeOutThemeAnimation TargetName="DeterminateRoot" />
+ <DoubleAnimation Storyboard.TargetName="DeterminateRoot"
+ Storyboard.TargetProperty="Opacity"
+ To="0"
+ Duration="0" />
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="E1">
+ <EasingDoubleKeyFrame KeyTime="0" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3" Value="0" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="E2">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.167" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.167" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.167" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.167" Value="0" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="E3">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.333" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.333" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.333" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.333" Value="0" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="E4">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.5" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.5" Value="0" />
+ </DoubleAnimationUsingKeyFrames>
+ <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="E5">
+ <EasingDoubleKeyFrame KeyTime="0" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.667" Value="0" />
+ <EasingDoubleKeyFrame KeyTime="0:0:0.667" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.667" Value="1" />
+ <EasingDoubleKeyFrame KeyTime="0:0:3.667" Value="0" />
+ </DoubleAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Error">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ProgressBarIndicator">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="0" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Paused">
+ <Storyboard>
+ <DoubleAnimation Storyboard.TargetName="ProgressBarIndicator"
+ Storyboard.TargetProperty="Opacity"
+ To="0.5"
+ Duration="0:0:0.25" />
+ </Storyboard>
+ </VisualState>
+ </VisualStateGroup>
+ </VisualStateManager.VisualStateGroups>
+ <Grid x:Name="EllipseGrid"
+ Opacity="0">
+ <Grid.RenderTransform>
+ <TranslateTransform />
+ </Grid.RenderTransform>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ </Grid.ColumnDefinitions>
+ <Border x:Name="B1"
+ Grid.Column="8"
+ RenderTransformOrigin="0.5,0.5">
+ <Border.RenderTransform>
+ <TranslateTransform />
+ </Border.RenderTransform>
+ <Ellipse x:Name="E1"
+ Fill="{TemplateBinding Foreground}"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ RenderTransformOrigin="0.5,0.5">
+ <Ellipse.RenderTransform>
+ <TranslateTransform />
+ </Ellipse.RenderTransform>
+ </Ellipse>
+ </Border>
+ <Rectangle Grid.Column="7"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseOffset}" />
+ <Border x:Name="B2"
+ Grid.Column="6"
+ RenderTransformOrigin="0.5,0.5">
+ <Border.RenderTransform>
+ <TranslateTransform />
+ </Border.RenderTransform>
+ <Ellipse x:Name="E2"
+ Fill="{TemplateBinding Foreground}"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ RenderTransformOrigin="0.5,0.5">
+ <Ellipse.RenderTransform>
+ <TranslateTransform />
+ </Ellipse.RenderTransform>
+ </Ellipse>
+ </Border>
+ <Rectangle Grid.Column="5"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseOffset}" />
+ <Border x:Name="B3"
+ Grid.Column="4"
+ RenderTransformOrigin="0.5,0.5">
+ <Border.RenderTransform>
+ <TranslateTransform />
+ </Border.RenderTransform>
+ <Ellipse x:Name="E3"
+ Fill="{TemplateBinding Foreground}"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ RenderTransformOrigin="0.5,0.5">
+ <Ellipse.RenderTransform>
+ <TranslateTransform />
+ </Ellipse.RenderTransform>
+ </Ellipse>
+ </Border>
+ <Rectangle Grid.Column="3"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseOffset}" />
+ <Border x:Name="B4"
+ Grid.Column="2"
+ RenderTransformOrigin="0.5,0.5">
+ <Border.RenderTransform>
+ <TranslateTransform />
+ </Border.RenderTransform>
+ <Ellipse x:Name="E4"
+ Fill="{TemplateBinding Foreground}"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ RenderTransformOrigin="0.5,0.5">
+ <Ellipse.RenderTransform>
+ <TranslateTransform />
+ </Ellipse.RenderTransform>
+ </Ellipse>
+ </Border>
+ <Rectangle Grid.Column="1"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseOffset}" />
+ <Border x:Name="B5"
+ Grid.Column="0"
+ RenderTransformOrigin="0.5,0.5">
+ <Border.RenderTransform>
+ <TranslateTransform />
+ </Border.RenderTransform>
+ <Ellipse x:Name="E5"
+ Fill="{TemplateBinding Foreground}"
+ Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.EllipseDiameter}"
+ RenderTransformOrigin="0.5,0.5">
+ <Ellipse.RenderTransform>
+ <TranslateTransform />
+ </Ellipse.RenderTransform>
+ </Ellipse>
+ </Border>
+ </Grid>
+ <Border x:Name="DeterminateRoot"
+ Background="{TemplateBinding Background}"
+ BorderBrush="{TemplateBinding BorderBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}">
+ <Rectangle x:Name="ProgressBarIndicator"
+ Margin="{TemplateBinding Padding}"
+ Fill="{TemplateBinding Foreground}"
+ HorizontalAlignment="Left" />
+ </Border>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+</ResourceDictionary>
diff --git a/Xamarin.Forms.Platform.WinRT.Phone/PhoneResources.xaml b/Xamarin.Forms.Platform.WinRT.Phone/PhoneResources.xaml
index f8536369..fa3bbd24 100644
--- a/Xamarin.Forms.Platform.WinRT.Phone/PhoneResources.xaml
+++ b/Xamarin.Forms.Platform.WinRT.Phone/PhoneResources.xaml
@@ -6,6 +6,7 @@
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources.xaml" />
<ResourceDictionary Source="FormsTextBoxStyle.xaml" />
+ <ResourceDictionary Source="FormsProgressBarStyle.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- Fixes button sizing, including background outside the border -->
diff --git a/Xamarin.Forms.Platform.WinRT.Phone/Xamarin.Forms.Platform.WinRT.Phone.csproj b/Xamarin.Forms.Platform.WinRT.Phone/Xamarin.Forms.Platform.WinRT.Phone.csproj
index fcc75b71..efe45eb9 100644
--- a/Xamarin.Forms.Platform.WinRT.Phone/Xamarin.Forms.Platform.WinRT.Phone.csproj
+++ b/Xamarin.Forms.Platform.WinRT.Phone/Xamarin.Forms.Platform.WinRT.Phone.csproj
@@ -118,6 +118,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
+ <Page Include="FormsProgressBarStyle.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </Page>
<Page Include="FormsTextBoxStyle.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>