summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.UAP
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Platform.UAP')
-rw-r--r--Xamarin.Forms.Platform.UAP/AutoSuggestStyle.xaml389
-rw-r--r--Xamarin.Forms.Platform.UAP/FormsTextBoxStyle.xaml8
-rw-r--r--Xamarin.Forms.Platform.UAP/Resources.xaml384
-rw-r--r--Xamarin.Forms.Platform.UAP/SearchBarRenderer.cs40
-rw-r--r--Xamarin.Forms.Platform.UAP/Xamarin.Forms.Platform.UAP.csproj7
5 files changed, 411 insertions, 417 deletions
diff --git a/Xamarin.Forms.Platform.UAP/AutoSuggestStyle.xaml b/Xamarin.Forms.Platform.UAP/AutoSuggestStyle.xaml
new file mode 100644
index 0000000..3c85a01
--- /dev/null
+++ b/Xamarin.Forms.Platform.UAP/AutoSuggestStyle.xaml
@@ -0,0 +1,389 @@
+<ResourceDictionary
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:uwp="using:Xamarin.Forms.Platform.UWP">
+
+ <!-- Default Style for AutoSuggestBox -->
+ <Style TargetType="AutoSuggestBox">
+ <Setter Property="VerticalAlignment" Value="Top" />
+ <Setter Property="IsTabStop" Value="False" />
+ <Setter Property="TextBoxStyle" Value="{StaticResource AutoSuggestBoxTextBoxStyle}" />
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="AutoSuggestBox">
+ <Grid>
+ <VisualStateManager.VisualStateGroups>
+ <VisualStateGroup x:Name="Orientation">
+ <VisualState x:Name="Landscape"/>
+ <VisualState x:Name="Portrait"/>
+ </VisualStateGroup>
+ </VisualStateManager.VisualStateGroups>
+ <uwp:FormsTextBox x:Name="TextBox"
+ Style="{TemplateBinding TextBoxStyle}"
+ FontFamily="{TemplateBinding FontFamily}"
+ FontSize="{TemplateBinding FontSize}"
+ FontStyle="{TemplateBinding FontStyle}"
+ PlaceholderText="{TemplateBinding PlaceholderText}"
+ Header="{TemplateBinding Header}"
+ Width="{TemplateBinding Width}"
+ ScrollViewer.BringIntoViewOnFocusChange="False"
+ Canvas.ZIndex="0"
+ Margin="0"
+ DesiredCandidateWindowAlignment="BottomEdge"/>
+ <Popup x:Name="SuggestionsPopup">
+ <Border x:Name="SuggestionsContainer">
+ <Border.RenderTransform>
+ <TranslateTransform x:Name="UpwardTransform"/>
+ </Border.RenderTransform>
+ <ListView x:Name="SuggestionsList"
+ Background="{ThemeResource SystemControlBackgroundChromeMediumLowBrush}"
+ BorderThickness="{ThemeResource AutoSuggestListBorderThemeThickness}"
+ BorderBrush="{ThemeResource SystemControlForegroundBaseMediumLowBrush}"
+ DisplayMemberPath="{TemplateBinding DisplayMemberPath}"
+ IsItemClickEnabled="True"
+ ItemTemplate="{TemplateBinding ItemTemplate}"
+ ItemTemplateSelector="{TemplateBinding ItemTemplateSelector}"
+ ItemContainerStyle="{TemplateBinding ItemContainerStyle}"
+ MaxHeight="{ThemeResource AutoSuggestListMaxHeight}"
+ Margin="{ThemeResource AutoSuggestListMargin}">
+ <ListView.ItemContainerTransitions>
+ <TransitionCollection />
+ </ListView.ItemContainerTransitions>
+ </ListView>
+ </Border>
+ </Popup>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <Style TargetType="uwp:FormsTextBox" x:Key="AutoSuggestBoxTextBoxStyle">
+ <Setter Property="MinWidth" Value="{ThemeResource TextControlThemeMinWidth}" />
+ <Setter Property="MinHeight" Value="{ThemeResource TextControlThemeMinHeight}" />
+ <Setter Property="Foreground" Value="{ThemeResource SystemControlForegroundBaseHighBrush}" />
+ <Setter Property="ForegroundFocusBrush" Value="{ThemeResource SystemControlForegroundChromeBlackHighBrush}" />
+ <Setter Property="PlaceholderForegroundBrush" Value="{ThemeResource SystemControlPageTextBaseMediumBrush}" />
+ <Setter Property="PlaceholderForegroundFocusBrush" Value="{ThemeResource SystemControlPageTextChromeBlackMediumLowBrush}" />
+ <Setter Property="Background" Value="{ThemeResource SystemControlBackgroundAltHighBrush}" />
+ <Setter Property="BackgroundFocusBrush" Value="{ThemeResource SystemControlBackgroundChromeWhiteBrush}" />
+ <Setter Property="BorderBrush" Value="{ThemeResource SystemControlForegroundChromeDisabledLowBrush}" />
+ <Setter Property="SelectionHighlightColor" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
+ <Setter Property="BorderThickness" Value="{ThemeResource TextControlBorderThemeThickness}" />
+ <Setter Property="FontFamily" Value="{ThemeResource ContentControlThemeFontFamily}" />
+ <Setter Property="FontSize" Value="{ThemeResource ControlContentThemeFontSize}" />
+ <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden" />
+ <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Hidden" />
+ <Setter Property="ScrollViewer.IsDeferredScrollingEnabled" Value="False" />
+ <Setter Property="Padding" Value="{ThemeResource TextControlThemePadding}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="uwp:FormsTextBox">
+ <Grid>
+ <Grid.Resources>
+ <Style x:Name="DeleteButtonStyle" TargetType="Button">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="Button">
+ <Grid>
+ <VisualStateManager.VisualStateGroups>
+ <VisualStateGroup x:Name="CommonStates">
+ <VisualState x:Name="Normal" />
+ <VisualState x:Name="PointerOver">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightTransparentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="GlyphElement"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource FormsCancelBackgroundBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Pressed">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="GlyphElement"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Disabled">
+ <Storyboard>
+ <DoubleAnimation Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Opacity"
+ To="0"
+ Duration="0" />
+ </Storyboard>
+ </VisualState>
+ </VisualStateGroup>
+ </VisualStateManager.VisualStateGroups>
+ <Border x:Name="BorderElement"
+ BorderBrush="{ThemeResource TextBoxButtonBorderThemeBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ Background="{ThemeResource FormsCancelBackgroundBrush}">
+ <TextBlock x:Name="GlyphElement"
+ Foreground="{ThemeResource FormsCancelForegroundBrush}"
+ VerticalAlignment="Center"
+ HorizontalAlignment="Center"
+ FontStyle="Normal"
+ FontSize="12"
+ Text="&#xE10A;"
+ FontFamily="{ThemeResource SymbolThemeFontFamily}"
+ AutomationProperties.AccessibilityView="Raw"/>
+ </Border>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+ <Style x:Name="QueryButtonStyle" TargetType="Button">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="Button">
+ <Grid>
+ <VisualStateManager.VisualStateGroups>
+ <VisualStateGroup x:Name="CommonStates">
+ <VisualState x:Name="Normal" />
+ <VisualState x:Name="PointerOver">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightTransparentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltAccentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Pressed">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Disabled">
+ <Storyboard>
+ <DoubleAnimation Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Opacity"
+ To="0"
+ Duration="0" />
+ </Storyboard>
+ </VisualState>
+ </VisualStateGroup>
+ </VisualStateManager.VisualStateGroups>
+ <Border x:Name="BorderElement"
+ BorderBrush="{ThemeResource TextBoxButtonBorderThemeBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ Background="{ThemeResource TextBoxButtonBackgroundThemeBrush}">
+ <ContentPresenter x:Name="ContentPresenter"
+ Content="{TemplateBinding Content}"
+ ContentTransitions="{TemplateBinding ContentTransitions}"
+ ContentTemplate="{TemplateBinding ContentTemplate}"
+ Margin="{TemplateBinding Padding}"
+ HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
+ VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
+ AutomationProperties.AccessibilityView="Raw"/>
+ </Border>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+ </Grid.Resources>
+ <VisualStateManager.VisualStateGroups>
+ <VisualStateGroup x:Name="CommonStates">
+ <VisualState x:Name="Disabled">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="HeaderContentPresenter"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledTransparentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundBaseLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="BorderBrush">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledChromeDisabledLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaceholderTextContentPresenter"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledChromeDisabledLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Normal" />
+ <VisualState x:Name="PointerOver">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="BorderBrush">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightChromeAltLowBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
+ Storyboard.TargetProperty="Opacity">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource TextControlBackgroundHoverOpacity}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="Focused">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaceholderTextContentPresenter"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding PlaceholderForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
+ Storyboard.TargetProperty="Background">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding BackgroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
+ Storyboard.TargetProperty="Opacity">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource TextControlBackgroundFocusedOpacity}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
+ Storyboard.TargetProperty="BorderBrush">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding ForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
+ Storyboard.TargetProperty="RequestedTheme">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="Light" />
+ </ObjectAnimationUsingKeyFrames>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="QueryButton"
+ Storyboard.TargetProperty="Foreground">
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundChromeBlackMediumBrush}" />
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ </VisualStateGroup>
+ <VisualStateGroup x:Name="ButtonStates">
+ <VisualState x:Name="ButtonVisible">
+ <Storyboard>
+ <ObjectAnimationUsingKeyFrames Storyboard.TargetName="DeleteButton"
+ Storyboard.TargetProperty="Visibility">
+ <DiscreteObjectKeyFrame KeyTime="0">
+ <DiscreteObjectKeyFrame.Value>
+ <Visibility>Visible</Visibility>
+ </DiscreteObjectKeyFrame.Value>
+ </DiscreteObjectKeyFrame>
+ </ObjectAnimationUsingKeyFrames>
+ </Storyboard>
+ </VisualState>
+ <VisualState x:Name="ButtonCollapsed" />
+ </VisualStateGroup>
+ </VisualStateManager.VisualStateGroups>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="*" />
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="Auto" />
+ </Grid.ColumnDefinitions>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto" />
+ <RowDefinition Height="*" />
+ </Grid.RowDefinitions>
+ <Border x:Name="BackgroundElement"
+ Grid.Row="1"
+ Background="{TemplateBinding Background}"
+ Margin="{TemplateBinding BorderThickness}"
+ Opacity="{ThemeResource TextControlBackgroundRestOpacity}"
+ Grid.ColumnSpan="3"
+ Grid.RowSpan="1"/>
+ <Border x:Name="BorderElement"
+ Grid.Row="1"
+ BorderBrush="{TemplateBinding BorderBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ Grid.ColumnSpan="3"
+ Grid.RowSpan="1"/>
+ <ContentPresenter x:Name="HeaderContentPresenter"
+ x:DeferLoadStrategy="Lazy"
+ Visibility="Collapsed"
+ Grid.Row="0"
+ Foreground="{Binding PlaceholderForegroundBrush, RelativeSource={RelativeSource TemplatedParent}}"
+ Margin="0,0,0,8"
+ Grid.ColumnSpan="3"
+ Content="{TemplateBinding Header}"
+ ContentTemplate="{TemplateBinding HeaderTemplate}"
+ FontWeight="Normal"
+ TextWrapping="Wrap" />
+ <ScrollViewer x:Name="ContentElement"
+ Grid.Row="1"
+ HorizontalScrollMode="{TemplateBinding ScrollViewer.HorizontalScrollMode}"
+ HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
+ VerticalScrollMode="{TemplateBinding ScrollViewer.VerticalScrollMode}"
+ VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
+ IsHorizontalRailEnabled="{TemplateBinding ScrollViewer.IsHorizontalRailEnabled}"
+ IsVerticalRailEnabled="{TemplateBinding ScrollViewer.IsVerticalRailEnabled}"
+ IsDeferredScrollingEnabled="{TemplateBinding ScrollViewer.IsDeferredScrollingEnabled}"
+ Margin="{TemplateBinding BorderThickness}"
+ Padding="{TemplateBinding Padding}"
+ IsTabStop="False"
+ AutomationProperties.AccessibilityView="Raw"
+ ZoomMode="Disabled" />
+ <!-- Converting the TextAlignment set for the control's input text to a HorizontalAlignment
+ so the PlaceholderText's alignment will match the input text -->
+ <ContentControl x:Name="PlaceholderTextContentPresenter"
+ Grid.Row="1"
+ Foreground="{Binding PlaceholderForegroundBrush, RelativeSource={RelativeSource TemplatedParent}}"
+ Margin="{TemplateBinding BorderThickness}"
+ Padding="{TemplateBinding Padding}"
+ IsTabStop="False"
+ Grid.ColumnSpan="3"
+ Content="{TemplateBinding PlaceholderText}"
+ FontFamily="{TemplateBinding FontFamily}"
+ FontSize="{TemplateBinding FontSize}"
+ FontStyle="{TemplateBinding FontStyle}"
+ IsHitTestVisible="False"
+ HorizontalAlignment="{Binding TextAlignment,
+ RelativeSource={RelativeSource Mode=TemplatedParent},
+ Converter={StaticResource AlignmentConverter}}" />
+ <Button x:Name="DeleteButton"
+ Grid.Row="1"
+ Style="{StaticResource DeleteButtonStyle}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ Margin="{ThemeResource HelperButtonThemePadding}"
+ IsTabStop="False"
+ Grid.Column="1"
+ Visibility="Collapsed"
+ FontSize="{TemplateBinding FontSize}"
+ MinWidth="34"
+ VerticalAlignment="Stretch"/>
+ <Button x:Name="QueryButton"
+ Grid.Row="1"
+ Style="{StaticResource QueryButtonStyle}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ Margin="{ThemeResource HelperButtonThemePadding}"
+ IsTabStop="False"
+ Grid.Column="2"
+ FontSize="{TemplateBinding FontSize}"
+ MinWidth="34"
+ VerticalAlignment="Stretch"/>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+</ResourceDictionary> \ No newline at end of file
diff --git a/Xamarin.Forms.Platform.UAP/FormsTextBoxStyle.xaml b/Xamarin.Forms.Platform.UAP/FormsTextBoxStyle.xaml
index c573552..f449ad5 100644
--- a/Xamarin.Forms.Platform.UAP/FormsTextBoxStyle.xaml
+++ b/Xamarin.Forms.Platform.UAP/FormsTextBoxStyle.xaml
@@ -8,6 +8,9 @@
<Setter Property="MinWidth" Value="{ThemeResource TextControlThemeMinWidth}" />
<Setter Property="MinHeight" Value="{ThemeResource TextControlThemeMinHeight}" />
<Setter Property="Foreground" Value="{ThemeResource SystemControlForegroundBaseHighBrush}" />
+ <Setter Property="ForegroundFocusBrush" Value="{ThemeResource SystemControlForegroundChromeBlackHighBrush}" />
+ <Setter Property="PlaceholderForegroundBrush" Value="{ThemeResource SystemControlPageTextBaseMediumBrush}" />
+ <Setter Property="PlaceholderForegroundFocusBrush" Value="{ThemeResource SystemControlPageTextChromeBlackMediumLowBrush}" />
<Setter Property="Background" Value="{ThemeResource SystemControlBackgroundAltHighBrush}" />
<Setter Property="BackgroundFocusBrush" Value="{ThemeResource SystemControlBackgroundChromeWhiteBrush}" />
<Setter Property="BorderBrush" Value="{ThemeResource SystemControlForegroundChromeDisabledLowBrush}" />
@@ -15,7 +18,6 @@
<Setter Property="BorderThickness" Value="{ThemeResource TextControlBorderThemeThickness}" />
<Setter Property="FontFamily" Value="{ThemeResource ContentControlThemeFontFamily}" />
<Setter Property="FontSize" Value="{ThemeResource ControlContentThemeFontSize}" />
- <Setter Property="PlaceholderForegroundBrush" Value="{ThemeResource SystemControlPageTextBaseMediumBrush}" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Hidden" />
<Setter Property="ScrollViewer.IsDeferredScrollingEnabled" Value="False" />
@@ -123,7 +125,7 @@
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground"
Storyboard.TargetName="PlaceholderTextContentPresenter">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlPageTextChromeBlackMediumLowBrush}" />
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding PlaceholderForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background"
Storyboard.TargetName="BackgroundElement">
@@ -137,7 +139,7 @@
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentElement">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlForegroundChromeBlackHighBrush}" />
+ <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding ForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="RequestedTheme"
Storyboard.TargetName="ContentElement">
diff --git a/Xamarin.Forms.Platform.UAP/Resources.xaml b/Xamarin.Forms.Platform.UAP/Resources.xaml
index 5df785f..5f3a499 100644
--- a/Xamarin.Forms.Platform.UAP/Resources.xaml
+++ b/Xamarin.Forms.Platform.UAP/Resources.xaml
@@ -6,6 +6,7 @@
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="FormsTextBoxStyle.xaml" />
+ <ResourceDictionary Source="AutoSuggestStyle.xaml" />
</ResourceDictionary.MergedDictionaries>
<uwp:CaseConverter x:Key="LowerConverter" ConvertToUpper="False" />
@@ -708,386 +709,5 @@
<SolidColorBrush x:Key="FormsCancelForegroundBrush" />
<SolidColorBrush x:Key="FormsCancelBackgroundBrush" />
-
- <!-- Default Style for AutoSuggestBox -->
- <Style TargetType="AutoSuggestBox">
- <Setter Property="VerticalAlignment" Value="Top" />
- <Setter Property="IsTabStop" Value="False" />
- <Setter Property="TextBoxStyle" Value="{StaticResource AutoSuggestBoxTextBoxStyle}" />
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="AutoSuggestBox">
- <Grid>
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="Orientation">
- <VisualState x:Name="Landscape"/>
- <VisualState x:Name="Portrait"/>
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- <uwp:FormsTextBox x:Name="TextBox"
- Style="{TemplateBinding TextBoxStyle}"
- FontFamily="{TemplateBinding FontFamily}"
- FontSize="{TemplateBinding FontSize}"
- FontStyle="{TemplateBinding FontStyle}"
- PlaceholderText="{TemplateBinding PlaceholderText}"
- Header="{TemplateBinding Header}"
- Width="{TemplateBinding Width}"
- ScrollViewer.BringIntoViewOnFocusChange="False"
- Canvas.ZIndex="0"
- Margin="0"
- DesiredCandidateWindowAlignment="BottomEdge"/>
- <Popup x:Name="SuggestionsPopup">
- <Border x:Name="SuggestionsContainer">
- <Border.RenderTransform>
- <TranslateTransform x:Name="UpwardTransform"/>
- </Border.RenderTransform>
- <ListView x:Name="SuggestionsList"
- Background="{ThemeResource SystemControlBackgroundChromeMediumLowBrush}"
- BorderThickness="{ThemeResource AutoSuggestListBorderThemeThickness}"
- BorderBrush="{ThemeResource SystemControlForegroundBaseMediumLowBrush}"
- DisplayMemberPath="{TemplateBinding DisplayMemberPath}"
- IsItemClickEnabled="True"
- ItemTemplate="{TemplateBinding ItemTemplate}"
- ItemTemplateSelector="{TemplateBinding ItemTemplateSelector}"
- ItemContainerStyle="{TemplateBinding ItemContainerStyle}"
- MaxHeight="{ThemeResource AutoSuggestListMaxHeight}"
- Margin="{ThemeResource AutoSuggestListMargin}">
- <ListView.ItemContainerTransitions>
- <TransitionCollection />
- </ListView.ItemContainerTransitions>
- </ListView>
- </Border>
- </Popup>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style TargetType="uwp:FormsTextBox" x:Key="AutoSuggestBoxTextBoxStyle">
- <Setter Property="MinWidth" Value="{ThemeResource TextControlThemeMinWidth}" />
- <Setter Property="MinHeight" Value="{ThemeResource TextControlThemeMinHeight}" />
- <Setter Property="Foreground" Value="{ThemeResource SystemControlForegroundBaseHighBrush}" />
- <Setter Property="ForegroundFocusBrush" Value="{ThemeResource SystemControlForegroundChromeBlackHighBrush}" />
- <Setter Property="PlaceholderForegroundBrush" Value="{ThemeResource SystemControlPageTextBaseMediumBrush}" />
- <Setter Property="PlaceholderForegroundFocusBrush" Value="{ThemeResource SystemControlPageTextChromeBlackMediumLowBrush}" />
- <Setter Property="Background" Value="{ThemeResource SystemControlBackgroundAltHighBrush}" />
- <Setter Property="BorderBrush" Value="{ThemeResource SystemControlForegroundChromeDisabledLowBrush}" />
- <Setter Property="SelectionHighlightColor" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
- <Setter Property="BorderThickness" Value="{ThemeResource TextControlBorderThemeThickness}" />
- <Setter Property="FontFamily" Value="{ThemeResource ContentControlThemeFontFamily}" />
- <Setter Property="FontSize" Value="{ThemeResource ControlContentThemeFontSize}" />
- <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden" />
- <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Hidden" />
- <Setter Property="ScrollViewer.IsDeferredScrollingEnabled" Value="False" />
- <Setter Property="Padding" Value="{ThemeResource TextControlThemePadding}"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="uwp:FormsTextBox">
- <Grid>
- <Grid.Resources>
- <Style x:Name="DeleteButtonStyle" TargetType="Button">
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="Button">
- <Grid>
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal" />
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightTransparentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="GlyphElement"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource FormsCancelBackgroundBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="GlyphElement"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <DoubleAnimation Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Opacity"
- To="0"
- Duration="0" />
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- <Border x:Name="BorderElement"
- BorderBrush="{ThemeResource TextBoxButtonBorderThemeBrush}"
- BorderThickness="{TemplateBinding BorderThickness}"
- Background="{ThemeResource FormsCancelBackgroundBrush}">
- <TextBlock x:Name="GlyphElement"
- Foreground="{ThemeResource FormsCancelForegroundBrush}"
- VerticalAlignment="Center"
- HorizontalAlignment="Center"
- FontStyle="Normal"
- FontSize="12"
- Text="&#xE10A;"
- FontFamily="{ThemeResource SymbolThemeFontFamily}"
- AutomationProperties.AccessibilityView="Raw"/>
- </Border>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- <Style x:Name="QueryButtonStyle" TargetType="Button">
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="Button">
- <Grid>
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal" />
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightTransparentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltAccentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <DoubleAnimation Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Opacity"
- To="0"
- Duration="0" />
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- <Border x:Name="BorderElement"
- BorderBrush="{ThemeResource TextBoxButtonBorderThemeBrush}"
- BorderThickness="{TemplateBinding BorderThickness}"
- Background="{ThemeResource TextBoxButtonBackgroundThemeBrush}">
- <ContentPresenter x:Name="ContentPresenter"
- Content="{TemplateBinding Content}"
- ContentTransitions="{TemplateBinding ContentTransitions}"
- ContentTemplate="{TemplateBinding ContentTemplate}"
- Margin="{TemplateBinding Padding}"
- HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
- VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
- AutomationProperties.AccessibilityView="Raw"/>
- </Border>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- </Grid.Resources>
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Disabled">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="HeaderContentPresenter"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledTransparentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundBaseLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="BorderBrush">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledChromeDisabledLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaceholderTextContentPresenter"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledChromeDisabledLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Normal" />
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="BorderBrush">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightChromeAltLowBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
- Storyboard.TargetProperty="Opacity">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource TextControlBackgroundHoverOpacity}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Focused">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaceholderTextContentPresenter"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding PlaceholderForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
- Storyboard.TargetProperty="Background">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundChromeWhiteBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundElement"
- Storyboard.TargetProperty="Opacity">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource TextControlBackgroundFocusedOpacity}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BorderElement"
- Storyboard.TargetProperty="BorderBrush">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{Binding ForegroundFocusBrush, RelativeSource={RelativeSource TemplatedParent}}" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentElement"
- Storyboard.TargetProperty="RequestedTheme">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Light" />
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="QueryButton"
- Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundChromeBlackMediumBrush}" />
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="ButtonStates">
- <VisualState x:Name="ButtonVisible">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="DeleteButton"
- Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0">
- <DiscreteObjectKeyFrame.Value>
- <Visibility>Visible</Visibility>
- </DiscreteObjectKeyFrame.Value>
- </DiscreteObjectKeyFrame>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="ButtonCollapsed" />
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="Auto" />
- <ColumnDefinition Width="Auto" />
- </Grid.ColumnDefinitions>
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto" />
- <RowDefinition Height="*" />
- </Grid.RowDefinitions>
- <Border x:Name="BackgroundElement"
- Grid.Row="1"
- Background="{TemplateBinding Background}"
- Margin="{TemplateBinding BorderThickness}"
- Opacity="{ThemeResource TextControlBackgroundRestOpacity}"
- Grid.ColumnSpan="3"
- Grid.RowSpan="1"/>
- <Border x:Name="BorderElement"
- Grid.Row="1"
- BorderBrush="{TemplateBinding BorderBrush}"
- BorderThickness="{TemplateBinding BorderThickness}"
- Grid.ColumnSpan="3"
- Grid.RowSpan="1"/>
- <ContentPresenter x:Name="HeaderContentPresenter"
- x:DeferLoadStrategy="Lazy"
- Visibility="Collapsed"
- Grid.Row="0"
- Foreground="{Binding PlaceholderForegroundBrush, RelativeSource={RelativeSource TemplatedParent}}"
- Margin="0,0,0,8"
- Grid.ColumnSpan="3"
- Content="{TemplateBinding Header}"
- ContentTemplate="{TemplateBinding HeaderTemplate}"
- FontWeight="Normal"
- TextWrapping="Wrap" />
- <ScrollViewer x:Name="ContentElement"
- Grid.Row="1"
- HorizontalScrollMode="{TemplateBinding ScrollViewer.HorizontalScrollMode}"
- HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}"
- VerticalScrollMode="{TemplateBinding ScrollViewer.VerticalScrollMode}"
- VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}"
- IsHorizontalRailEnabled="{TemplateBinding ScrollViewer.IsHorizontalRailEnabled}"
- IsVerticalRailEnabled="{TemplateBinding ScrollViewer.IsVerticalRailEnabled}"
- IsDeferredScrollingEnabled="{TemplateBinding ScrollViewer.IsDeferredScrollingEnabled}"
- Margin="{TemplateBinding BorderThickness}"
- Padding="{TemplateBinding Padding}"
- IsTabStop="False"
- AutomationProperties.AccessibilityView="Raw"
- ZoomMode="Disabled" />
- <!-- Converting the TextAlignment set for the control's input text to a HorizontalAlignment
- so the PlaceholderText's alignment will match the input text -->
- <ContentControl x:Name="PlaceholderTextContentPresenter"
- Grid.Row="1"
- Foreground="{Binding PlaceholderForegroundBrush, RelativeSource={RelativeSource TemplatedParent}}"
- Margin="{TemplateBinding BorderThickness}"
- Padding="{TemplateBinding Padding}"
- IsTabStop="False"
- Grid.ColumnSpan="3"
- Content="{TemplateBinding PlaceholderText}"
- FontFamily="{TemplateBinding FontFamily}"
- FontSize="{TemplateBinding FontSize}"
- FontStyle="{TemplateBinding FontStyle}"
- IsHitTestVisible="False"
- HorizontalAlignment="{Binding TextAlignment,
- RelativeSource={RelativeSource Mode=TemplatedParent},
- Converter={StaticResource AlignmentConverter}}" />
- <Button x:Name="DeleteButton"
- Grid.Row="1"
- Style="{StaticResource DeleteButtonStyle}"
- BorderThickness="{TemplateBinding BorderThickness}"
- Margin="{ThemeResource HelperButtonThemePadding}"
- IsTabStop="False"
- Grid.Column="1"
- Visibility="Collapsed"
- FontSize="{TemplateBinding FontSize}"
- MinWidth="34"
- VerticalAlignment="Stretch"/>
- <Button x:Name="QueryButton"
- Grid.Row="1"
- Style="{StaticResource QueryButtonStyle}"
- BorderThickness="{TemplateBinding BorderThickness}"
- Margin="{ThemeResource HelperButtonThemePadding}"
- IsTabStop="False"
- Grid.Column="2"
- FontSize="{TemplateBinding FontSize}"
- MinWidth="34"
- VerticalAlignment="Stretch"/>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
+
</ResourceDictionary> \ No newline at end of file
diff --git a/Xamarin.Forms.Platform.UAP/SearchBarRenderer.cs b/Xamarin.Forms.Platform.UAP/SearchBarRenderer.cs
index 04e1058..9b80ade 100644
--- a/Xamarin.Forms.Platform.UAP/SearchBarRenderer.cs
+++ b/Xamarin.Forms.Platform.UAP/SearchBarRenderer.cs
@@ -155,23 +155,11 @@ namespace Xamarin.Forms.Platform.UWP
Color placeholderColor = Element.PlaceholderColor;
- if (placeholderColor.IsDefault)
- {
- if (_defaultPlaceholderColorBrush == null)
- return;
-
- _queryTextBox.PlaceholderForegroundBrush = _defaultPlaceholderColorBrush;
- _queryTextBox.PlaceholderForegroundBrush = _defaultPlaceholderColorFocusBrush;
- }
-
- if (_defaultPlaceholderColorBrush == null)
- {
- _defaultPlaceholderColorBrush = _queryTextBox.PlaceholderForegroundBrush;
- _defaultPlaceholderColorFocusBrush = _queryTextBox.PlaceholderForegroundFocusBrush;
- }
+ BrushHelpers.UpdateColor(placeholderColor, ref _defaultPlaceholderColorBrush,
+ () => _queryTextBox.PlaceholderForegroundBrush, brush => _queryTextBox.PlaceholderForegroundBrush = brush);
- _queryTextBox.PlaceholderForegroundBrush = placeholderColor.ToBrush();
- _queryTextBox.PlaceholderForegroundFocusBrush = placeholderColor.ToBrush();
+ BrushHelpers.UpdateColor(placeholderColor, ref _defaultPlaceholderColorFocusBrush,
+ () => _queryTextBox.PlaceholderForegroundFocusBrush, brush => _queryTextBox.PlaceholderForegroundFocusBrush = brush);
}
void UpdateText()
@@ -186,23 +174,11 @@ namespace Xamarin.Forms.Platform.UWP
Color textColor = Element.TextColor;
- if (textColor.IsDefault)
- {
- if (_defaultTextColorBrush == null)
- return;
-
- _queryTextBox.Foreground = _defaultTextColorBrush;
- _queryTextBox.ForegroundFocusBrush = _defaultTextColorFocusBrush;
- }
-
- if (_defaultTextColorBrush == null)
- {
- _defaultTextColorBrush = _queryTextBox.Foreground;
- _defaultTextColorFocusBrush = _queryTextBox.ForegroundFocusBrush;
- }
+ BrushHelpers.UpdateColor(textColor, ref _defaultTextColorBrush,
+ () => _queryTextBox.Foreground, brush => _queryTextBox.Foreground = brush);
- _queryTextBox.Foreground = textColor.ToBrush();
- _queryTextBox.ForegroundFocusBrush = textColor.ToBrush();
+ BrushHelpers.UpdateColor(textColor, ref _defaultTextColorFocusBrush,
+ () => _queryTextBox.ForegroundFocusBrush, brush => _queryTextBox.ForegroundFocusBrush = brush);
}
}
} \ No newline at end of file
diff --git a/Xamarin.Forms.Platform.UAP/Xamarin.Forms.Platform.UAP.csproj b/Xamarin.Forms.Platform.UAP/Xamarin.Forms.Platform.UAP.csproj
index 5ce6221..4e80481 100644
--- a/Xamarin.Forms.Platform.UAP/Xamarin.Forms.Platform.UAP.csproj
+++ b/Xamarin.Forms.Platform.UAP/Xamarin.Forms.Platform.UAP.csproj
@@ -131,6 +131,9 @@
<Compile Include="..\Xamarin.Forms.Platform.WinRT\AlignmentExtensions.cs">
<Link>AlignmentExtensions.cs</Link>
</Compile>
+ <Compile Include="..\Xamarin.Forms.Platform.WinRT\BrushHelpers.cs">
+ <Link>BrushHelpers.cs</Link>
+ </Compile>
<Compile Include="..\Xamarin.Forms.Platform.WinRT\FormsTextBox.cs">
<Link>FormsTextBox.cs</Link>
</Compile>
@@ -421,6 +424,10 @@
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
+ <Page Include="AutoSuggestStyle.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
<Page Include="FormsTextBoxStyle.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>