diff --git a/dev/CheckBox/CheckBox_themeresources.xaml b/dev/CheckBox/CheckBox_themeresources.xaml
index ef71b79a98..21f899b9b1 100644
--- a/dev/CheckBox/CheckBox_themeresources.xaml
+++ b/dev/CheckBox/CheckBox_themeresources.xaml
@@ -647,10 +647,10 @@
UseLayoutRounding="False"
Height="20"
Width="20"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
@@ -266,37 +266,37 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
@@ -305,19 +305,19 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
diff --git a/dev/ColorPicker/ColorSpectrum.xaml b/dev/ColorPicker/ColorSpectrum.xaml
index dc6ead65a6..d5f6870764 100644
--- a/dev/ColorPicker/ColorSpectrum.xaml
+++ b/dev/ColorPicker/ColorSpectrum.xaml
@@ -66,13 +66,15 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
diff --git a/dev/Common/CornerRadiusFilterConverter.cpp b/dev/Common/CornerRadiusFilterConverter.cpp
index 6f4161ca0d..adac12f42e 100644
--- a/dev/Common/CornerRadiusFilterConverter.cpp
+++ b/dev/Common/CornerRadiusFilterConverter.cpp
@@ -29,7 +29,19 @@ winrt::CornerRadius CornerRadiusFilterConverter::Convert(winrt::CornerRadius con
break;
}
- return result;
+ return result;
+}
+
+double CornerRadiusFilterConverter::GetDoubleValue(winrt::CornerRadius const& radius, winrt::CornerRadiusFilterKind const& filterKind)
+{
+ switch (filterKind)
+ {
+ case winrt::CornerRadiusFilterKind::TopLeftValue:
+ return radius.TopLeft;
+ case winrt::CornerRadiusFilterKind::BottomRightValue:
+ return radius.BottomRight;
+ }
+ return 0;
}
winrt::IInspectable CornerRadiusFilterConverter::Convert(
@@ -38,8 +50,15 @@ winrt::IInspectable CornerRadiusFilterConverter::Convert(
winrt::IInspectable const& parameter,
winrt::hstring const& language)
{
- auto result = Convert(unbox_value(value), Filter());
- return box_value(result);
+ auto cornerRadius = unbox_value(value);
+ auto filterType = Filter();
+ if (filterType == winrt::CornerRadiusFilterKind::TopLeftValue ||
+ filterType == winrt::CornerRadiusFilterKind::BottomRightValue)
+ {
+ return box_value(GetDoubleValue(cornerRadius, Filter()));
+ }
+
+ return box_value(Convert(cornerRadius, Filter()));
}
winrt::IInspectable CornerRadiusFilterConverter::ConvertBack(
diff --git a/dev/Common/CornerRadiusFilterConverter.h b/dev/Common/CornerRadiusFilterConverter.h
index a5d74f1ec7..f5778202a0 100644
--- a/dev/Common/CornerRadiusFilterConverter.h
+++ b/dev/Common/CornerRadiusFilterConverter.h
@@ -25,4 +25,7 @@ class CornerRadiusFilterConverter :
winrt::TypeName const& targetType,
winrt::IInspectable const& parameter,
winrt::hstring const& language);
+
+private:
+ double GetDoubleValue(winrt::CornerRadius const& radius, winrt::CornerRadiusFilterKind const& filterKind);
};
diff --git a/dev/Common/CornerRadiusFilterConverters.idl b/dev/Common/CornerRadiusFilterConverters.idl
index a6d038c530..461f92c7dd 100644
--- a/dev/Common/CornerRadiusFilterConverters.idl
+++ b/dev/Common/CornerRadiusFilterConverters.idl
@@ -22,7 +22,9 @@ enum CornerRadiusFilterKind
Top,
Right,
Bottom,
- Left
+ Left,
+ TopLeftValue,
+ BottomRightValue
};
}
diff --git a/dev/CommonStyles/CornerRadius_themeresources.xaml b/dev/CommonStyles/CornerRadius_themeresources.xaml
index e59407bd5d..f1416c5464 100644
--- a/dev/CommonStyles/CornerRadius_themeresources.xaml
+++ b/dev/CommonStyles/CornerRadius_themeresources.xaml
@@ -22,5 +22,7 @@
+
+
diff --git a/dev/CommonStyles/MediaTransportControls_themeresources.xaml b/dev/CommonStyles/MediaTransportControls_themeresources.xaml
index 5c7d5342e8..2c2969f18e 100644
--- a/dev/CommonStyles/MediaTransportControls_themeresources.xaml
+++ b/dev/CommonStyles/MediaTransportControls_themeresources.xaml
@@ -240,19 +240,19 @@
Height="{ThemeResource SliderTrackThemeHeight}"
Grid.Row="1"
Grid.ColumnSpan="3"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
@@ -289,19 +289,19 @@
Width="{ThemeResource SliderTrackThemeHeight}"
Grid.Column="1"
Grid.RowSpan="3"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
diff --git a/dev/CommonStyles/ProgressBar_themeresources.xaml b/dev/CommonStyles/ProgressBar_themeresources.xaml
index 2f8fc784d8..606d3f4874 100644
--- a/dev/CommonStyles/ProgressBar_themeresources.xaml
+++ b/dev/CommonStyles/ProgressBar_themeresources.xaml
@@ -255,10 +255,10 @@
Margin="{TemplateBinding Padding}"
Fill="{TemplateBinding Foreground}"
HorizontalAlignment="Left"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
diff --git a/dev/NavigationView/NavigationView_rs1_themeresources.xaml b/dev/NavigationView/NavigationView_rs1_themeresources.xaml
index 7dfb353af8..8d2ec17003 100644
--- a/dev/NavigationView/NavigationView_rs1_themeresources.xaml
+++ b/dev/NavigationView/NavigationView_rs1_themeresources.xaml
@@ -578,10 +578,10 @@
Height="24"
Fill="{ThemeResource NavigationViewSelectionIndicatorForeground}"
Opacity="0.0"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
@@ -1049,10 +1049,10 @@
Height="2"
Fill="{ThemeResource NavigationViewSelectionIndicatorForeground}"
Opacity="0"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}"/>
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"/>
diff --git a/dev/Pivot/Pivot_themeresources.xaml b/dev/Pivot/Pivot_themeresources.xaml
index 44dd678a0b..aee749bb2a 100644
--- a/dev/Pivot/Pivot_themeresources.xaml
+++ b/dev/Pivot/Pivot_themeresources.xaml
@@ -619,10 +619,10 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
diff --git a/dev/ScrollBar/ScrollBar_themeresources.xaml b/dev/ScrollBar/ScrollBar_themeresources.xaml
index 32d3293b33..65c8256e57 100644
--- a/dev/ScrollBar/ScrollBar_themeresources.xaml
+++ b/dev/ScrollBar/ScrollBar_themeresources.xaml
@@ -3,7 +3,8 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:maps="using:Windows.UI.Xaml.Controls.Maps"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:contract7Present="http://schemas.microsoft.com/winfx/2006/xaml/presentation?IsApiContractPresent(Windows.Foundation.UniversalApiContract,7)">
+ xmlns:contract7Present="http://schemas.microsoft.com/winfx/2006/xaml/presentation?IsApiContractPresent(Windows.Foundation.UniversalApiContract,7)"
+ xmlns:contract7NotPresent="http://schemas.microsoft.com/winfx/2006/xaml/presentation?IsApiContractNotPresent(Windows.Foundation.UniversalApiContract,7)">
@@ -417,8 +418,10 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
@@ -450,8 +453,10 @@
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}">
diff --git a/dev/Slider/Slider_themeresources.xaml b/dev/Slider/Slider_themeresources.xaml
index 2513d47a91..345858744c 100644
--- a/dev/Slider/Slider_themeresources.xaml
+++ b/dev/Slider/Slider_themeresources.xaml
@@ -374,15 +374,15 @@
Height="{ThemeResource SliderTrackThemeHeight}"
Grid.Row="1"
Grid.ColumnSpan="3"
- contract7Present:RadiusX="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.TopLeft}"
- contract7Present:RadiusY="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CornerRadius.BottomRight}"
- contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Path=TopLeft}"
- contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Path=BottomRight}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+ contract7Present:RadiusX="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7Present:RadiusY="{Binding CornerRadius, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusX="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource TopLeftCornerRadiusDoubleValueConverter}}"
+ contract7NotPresent:RadiusY="{Binding Source={ThemeResource ControlCornerRadius}, Converter={StaticResource BottomRightCornerRadiusDoubleValueConverter}}" />
+
-
-
+
+
+
+
+
+
+
diff --git a/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.cpp b/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.cpp
index ad71eb5910..f02ee35377 100644
--- a/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.cpp
+++ b/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.cpp
@@ -18,6 +18,7 @@ using namespace Windows::UI::Xaml::Data;
using namespace Windows::UI::Xaml::Input;
using namespace Windows::UI::Xaml::Media;
using namespace Windows::UI::Xaml::Navigation;
+using namespace Windows::UI::Xaml::Shapes;
MainPage::MainPage() :
mItems(ref new Vector())
@@ -64,3 +65,28 @@ void NugetPackageTestAppCX::MainPage::WaitForIdleInvokerButton_Click(Platform::O
});
auto asyncAction = Windows::System::Threading::ThreadPool::RunAsync(workItem);
}
+
+void NugetPackageTestAppCX::MainPage::GetCheckBoxRectangleCornerRadiusValue_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
+{
+ GetCheckBoxRectangleCornerRadius(TestCheckBox);
+}
+
+void NugetPackageTestAppCX::MainPage::GetCheckBoxRectangleCornerRadius(DependencyObject^ obj)
+{
+ if (obj == nullptr) return;
+
+ auto count = VisualTreeHelper::GetChildrenCount(obj);
+ for (int i = 0; i < count; i++)
+ {
+ auto child = VisualTreeHelper::GetChild(obj, i);
+ if (auto rec = dynamic_cast(child))
+ {
+ CheckBoxRectangleCornerRadiusValueTextBlock->Text = rec->RadiusX + "," + rec->RadiusY;
+ }
+ else
+ {
+ GetCheckBoxRectangleCornerRadius(child);
+ }
+
+ }
+}
diff --git a/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.h b/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.h
index 91c1f6812d..a1fc1331a7 100644
--- a/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.h
+++ b/test/MUXControlsReleaseTest/NugetPackageTestAppCX/MainPage.xaml.h
@@ -16,8 +16,11 @@ namespace NugetPackageTestAppCX
void CloseAppInvokerButton_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
void PageLoaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
void OnAddItemsButtonClick(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
+ void GetCheckBoxRectangleCornerRadiusValue_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
Platform::Collections::Vector^ mItems;
void WaitForIdleInvokerButton_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
+
+ void GetCheckBoxRectangleCornerRadius(DependencyObject^ obj);
};
}
diff --git a/test/TestAppCX/CornerRadiusTestPage.xaml b/test/TestAppCX/CornerRadiusTestPage.xaml
new file mode 100644
index 0000000000..a06ff99ba0
--- /dev/null
+++ b/test/TestAppCX/CornerRadiusTestPage.xaml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
diff --git a/test/TestAppCX/CornerRadiusTestPage.xaml.cpp b/test/TestAppCX/CornerRadiusTestPage.xaml.cpp
new file mode 100644
index 0000000000..452c9a67a3
--- /dev/null
+++ b/test/TestAppCX/CornerRadiusTestPage.xaml.cpp
@@ -0,0 +1,27 @@
+//
+// CornerRadiusTestPage.xaml.cpp
+// Implementation of the CornerRadiusTestPage class
+//
+
+#include "pch.h"
+#include "CornerRadiusTestPage.xaml.h"
+
+using namespace TestAppCX;
+
+using namespace Platform;
+using namespace Windows::Foundation;
+using namespace Windows::Foundation::Collections;
+using namespace Windows::UI::Xaml;
+using namespace Windows::UI::Xaml::Controls;
+using namespace Windows::UI::Xaml::Controls::Primitives;
+using namespace Windows::UI::Xaml::Data;
+using namespace Windows::UI::Xaml::Input;
+using namespace Windows::UI::Xaml::Media;
+using namespace Windows::UI::Xaml::Navigation;
+
+// The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=234238
+
+CornerRadiusTestPage::CornerRadiusTestPage()
+{
+ InitializeComponent();
+}
diff --git a/test/TestAppCX/CornerRadiusTestPage.xaml.h b/test/TestAppCX/CornerRadiusTestPage.xaml.h
new file mode 100644
index 0000000000..7522094592
--- /dev/null
+++ b/test/TestAppCX/CornerRadiusTestPage.xaml.h
@@ -0,0 +1,21 @@
+//
+// CornerRadiusTestPage.xaml.h
+// Declaration of the CornerRadiusTestPage class
+//
+
+#pragma once
+
+#include "CornerRadiusTestPage.g.h"
+
+namespace TestAppCX
+{
+ ///
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ ///
+ [Windows::Foundation::Metadata::WebHostHidden]
+ public ref class CornerRadiusTestPage sealed
+ {
+ public:
+ CornerRadiusTestPage();
+ };
+}
diff --git a/test/TestAppCX/MainPage.xaml b/test/TestAppCX/MainPage.xaml
index 73a796c3be..2efa2ef894 100644
--- a/test/TestAppCX/MainPage.xaml
+++ b/test/TestAppCX/MainPage.xaml
@@ -13,6 +13,7 @@
+
diff --git a/test/TestAppCX/MainPage.xaml.cpp b/test/TestAppCX/MainPage.xaml.cpp
index 79b3b94994..e02bc0e3a5 100644
--- a/test/TestAppCX/MainPage.xaml.cpp
+++ b/test/TestAppCX/MainPage.xaml.cpp
@@ -10,6 +10,7 @@
#include "MainPage.xaml.h"
#include "LeakCycleTestCX.xaml.h"
#include "MenuBarTestPage.xaml.h"
+#include "CornerRadiusTestPage.xaml.h"
using namespace TestAppCX;
@@ -42,3 +43,9 @@ void TestAppCX::MainPage::GoToMenuBarTestPage(Platform::Object^ sender, Windows:
auto app = dynamic_cast(Application::Current);
app->RootFrame->Navigate(TypeName(MenuBarTestPage::typeid), nullptr);
}
+
+void TestAppCX::MainPage::GoToCornerRadiusTestPage(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
+{
+ auto app = dynamic_cast(Application::Current);
+ app->RootFrame->Navigate(TypeName(CornerRadiusTestPage::typeid), nullptr);
+}
diff --git a/test/TestAppCX/MainPage.xaml.h b/test/TestAppCX/MainPage.xaml.h
index 1769b995f2..8eba5dc66e 100644
--- a/test/TestAppCX/MainPage.xaml.h
+++ b/test/TestAppCX/MainPage.xaml.h
@@ -20,5 +20,6 @@ namespace TestAppCX
private:
void GoToLeakTestControlPage(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
void GoToMenuBarTestPage(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
+ void GoToCornerRadiusTestPage(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
};
}
diff --git a/test/TestAppCX/TestAppCX.vcxproj b/test/TestAppCX/TestAppCX.vcxproj
index 019b70235f..d73af35db5 100644
--- a/test/TestAppCX/TestAppCX.vcxproj
+++ b/test/TestAppCX/TestAppCX.vcxproj
@@ -181,7 +181,10 @@
-
+
+ CornerRadiusTestPage.xaml
+
+
MenuBarTestPage.xaml
@@ -191,7 +194,7 @@
MainPage.xaml
-
+
LeakCycleTestCX.xaml
@@ -199,13 +202,16 @@
Designer
+
+ Designer
+
Designer
-
+
Designer
-
+
Designer
@@ -228,10 +234,13 @@
App.xaml
+
+ CornerRadiusTestPage.xaml
+
MainPage.xaml
-
+
MenuBarTestPage.xaml
@@ -244,7 +253,7 @@
Create
Create
-
+
LeakCycleTestCX.xaml
diff --git a/test/TestAppCX/TestAppCX.vcxproj.filters b/test/TestAppCX/TestAppCX.vcxproj.filters
index 7078b53fe7..1fadb66ad2 100644
--- a/test/TestAppCX/TestAppCX.vcxproj.filters
+++ b/test/TestAppCX/TestAppCX.vcxproj.filters
@@ -57,5 +57,6 @@
+
\ No newline at end of file