public RatingControlPage() { this.InitializeComponent(); TestRatingControl.ValueChanged += TestRatingControl_ValueChanged; RatingDarkTheme.PlaceholderValue = 1.5; MyRatingReadOnlyTextBlock.Text = "2.2"; MyRatingReadOnlyWithPlaceholder.PlaceholderValue = 3.3; DisabledWithValue.Value = 3; DisabledWithPlaceholderValue.PlaceholderValue = 3; CustomImages.Value = 3.0; CustomImages.PlaceholderValue = 1.5; var imageInfo = new RatingItemImageInfo(); imageInfo.Image = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_set.png")); imageInfo.UnsetImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_unset.png"));; imageInfo.PlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_placeholder.png"));; imageInfo.DisabledImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_disabled.png"));; imageInfo.PointerOverImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverset.png"));; imageInfo.PointerOverPlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverplaceholder.png")); CustomImagesTwo.ItemInfo = imageInfo; CustomImagesTwo.Value = 3.0; CustomImagesTwo.PlaceholderValue = 4.25; PointerOverPlaceholderFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverPlaceholderFallbackRating_PointerMoved), true); PointerOverFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverFallbackRating_PointerMoved), true); PointerOverPlaceholderImageFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverPlaceholderImageFallbackRating_PointerMoved), true); PointerOverImageFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverImageFallbackRating_PointerMoved), true); ColorFlipButton.Foreground = _tomato; RatingBindingSample.DataContext = CaptionStringBox; BindingRatingCaption.DataContext = ColorFlipButton; //TODO: Uno Platform - WinUI wraps controls in a "TestFrame" which has some "ambient" features, including the view scaling checkbox //var testFrame = Window.Current.Content as TestFrame; //DependencyObject checkBox = SearchVisualTree(testFrame, "ViewScalingCheckBox"); //CheckBox cb = checkBox as CheckBox; //FrameDetails.Text = Window.Current.Bounds.ToString() + " " + cb.IsChecked.ToString(); #if !HAS_UNO if (ApiInformation.IsTypePresent("Windows.UI.Xaml.Controls.RatingControl")) { var wuxcRatingControl = new Windows.UI.Xaml.Controls.RatingControl(); wuxcRatingControl.Name = "WUXC RatingControl"; wuxcRatingControl.Caption = "WUXC RatingControl"; AutomationProperties.SetAutomationId(wuxcRatingControl, "wuxcRatingControl"); this.mainStackPanel.Children.Add(wuxcRatingControl); } #endif }
public RatingControlPage() { this.InitializeComponent(); TestRatingControl.ValueChanged += TestRatingControl_ValueChanged; RatingDarkTheme.PlaceholderValue = 1.5; MyRatingReadOnlyTextBlock.Text = "2.2"; MyRatingReadOnlyWithPlaceholder.PlaceholderValue = 3.3; DisabledWithValue.Value = 3; DisabledWithPlaceholderValue.PlaceholderValue = 3; CustomImages.Value = 3.0; CustomImages.PlaceholderValue = 1.5; var imageInfo = new RatingItemImageInfo(); imageInfo.Image = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_set.png")); imageInfo.UnsetImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_unset.png"));; imageInfo.PlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_placeholder.png"));; imageInfo.DisabledImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_disabled.png"));; imageInfo.PointerOverImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverset.png"));; imageInfo.PointerOverPlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverplaceholder.png")); CustomImagesTwo.ItemInfo = imageInfo; CustomImagesTwo.Value = 3.0; CustomImagesTwo.PlaceholderValue = 4.25; PointerOverPlaceholderFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverPlaceholderFallbackRating_PointerMoved), true); PointerOverFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverFallbackRating_PointerMoved), true); PointerOverPlaceholderImageFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverPlaceholderImageFallbackRating_PointerMoved), true); PointerOverImageFallbackRating.AddHandler(RatingControl.PointerMovedEvent, new PointerEventHandler(PointerOverImageFallbackRating_PointerMoved), true); ColorFlipButton.Foreground = _tomato; RatingBindingSample.DataContext = CaptionStringBox; BindingRatingCaption.DataContext = ColorFlipButton; FrameDetails.Text = Window.Current.Bounds.ToString(); if (ApiInformation.IsTypePresent("Windows.UI.Xaml.Controls.RatingControl")) { var wuxcRatingControl = new Windows.UI.Xaml.Controls.RatingControl(); wuxcRatingControl.Name = "WUXC RatingControl"; wuxcRatingControl.Caption = "WUXC RatingControl"; AutomationProperties.SetAutomationId(wuxcRatingControl, "wuxcRatingControl"); this.mainStackPanel.Children.Add(wuxcRatingControl); } }
public async Task VerifyDefaultsAndBasicSetting() { RatingControl ratingControl = null; RunOnUIThread.Execute(() => { ratingControl = new RatingControl(); Verify.IsNotNull(ratingControl); Verify.AreEqual(ratingControl.Caption, ""); Verify.AreEqual(ratingControl.InitialSetValue, 1); Verify.AreEqual(ratingControl.IsClearEnabled, true); Verify.AreEqual(ratingControl.IsReadOnly, false); Verify.AreEqual(ratingControl.MaxRating, 5); Verify.AreEqual(ratingControl.PlaceholderValue, -1); Verify.AreEqual(ratingControl.Value, -1); // Disabled due to 12359255 reliability issue // Verify.IsTrue(ratingControl.ItemInfo is RatingItemFontInfo, "Verify default type of ItemInfo"); // Verify.IsTrue((ratingControl.ItemInfo as RatingItemFontInfo).Glyph.Equals("\uE735")); // Now verify basic setting the value, and reaccessing it: ratingControl.Caption = "Rating API Test Caption"; ratingControl.InitialSetValue = 2; ratingControl.IsClearEnabled = false; ratingControl.IsReadOnly = true; ratingControl.MaxRating = 10; ratingControl.PlaceholderValue = 3.0; ratingControl.Value = 2.0; var imageInfo = new RatingItemImageInfo(); imageInfo.Image = new BitmapImage(new Uri("ms-appx:/Assets/rating_set.png")); ratingControl.ItemInfo = imageInfo; }); await TestServices.WindowHelper.WaitForIdle(); RunOnUIThread.Execute(() => { Verify.AreEqual(ratingControl.Caption, "Rating API Test Caption"); Verify.AreEqual(ratingControl.InitialSetValue, 2); Verify.AreEqual(ratingControl.IsClearEnabled, false); Verify.AreEqual(ratingControl.IsReadOnly, true); Verify.AreEqual(ratingControl.MaxRating, 10); Verify.AreEqual(ratingControl.PlaceholderValue, 3.0); Verify.AreEqual(ratingControl.Value, 2.0); Verify.IsTrue(ratingControl.ItemInfo is RatingItemImageInfo, "Verify default type of ItemInfo [2]"); Verify.IsTrue(((ratingControl.ItemInfo as RatingItemImageInfo).Image as BitmapImage).UriSource.Equals("ms-appx:/Assets/rating_set.png")); }); }
private void ChangeCustomImagesTwoType_Click(object sender, RoutedEventArgs e) { if (CustomImagesTwo.ItemInfo is RatingItemImageInfo) { var rifi = new RatingItemFontInfo(); rifi.Glyph = "\uEB52"; rifi.UnsetGlyph = "\uEB52"; rifi.PointerOverGlyph = "\uEB52"; rifi.PointerOverPlaceholderGlyph = "\uEB52"; rifi.DisabledGlyph = "\uEB52"; CustomImagesTwo.ItemInfo = rifi; DependencyObject obj = FindVisualChildByName(CustomImagesTwo, "RatingBackgroundStackPanel"); var child = VisualTreeHelper.GetChild(obj, 0); AutomationProperties.SetAutomationId(child, "CustomImagesTwo_FirstTextItem"); AutomationProperties.SetAccessibilityView(child, Windows.UI.Xaml.Automation.Peers.AccessibilityView.Control); CustomImagesTwoLoadedStageTwoCheckBox.IsChecked = true; } else { var imageInfo = new RatingItemImageInfo(); imageInfo.Image = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_set.png")); imageInfo.UnsetImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_unset.png"));; imageInfo.PlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_placeholder.png"));; imageInfo.DisabledImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_disabled.png"));; imageInfo.PointerOverImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverset.png"));; imageInfo.PointerOverPlaceholderImage = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri("ms-appx:/Assets/rating_mouseoverplaceholder.png")); CustomImagesTwo.ItemInfo = imageInfo; DependencyObject obj = FindVisualChildByName(CustomImagesTwo, "RatingBackgroundStackPanel"); var child = VisualTreeHelper.GetChild(obj, 0); AutomationProperties.SetAutomationId(child, "CustomImagesTwo_FirstImageItem_Again"); AutomationProperties.SetAccessibilityView(child, Windows.UI.Xaml.Automation.Peers.AccessibilityView.Control); CustomImagesTwoLoadedStageThreeCheckBox.IsChecked = true; } }