From 2babb718a65ee3316bdb0ae1ac0edf678da049e9 Mon Sep 17 00:00:00 2001 From: NaBian <836904362@qq.com> Date: Sun, 20 Mar 2022 13:45:14 +0800 Subject: [PATCH] fix: fixed CoverView crash issue when the value of Groups is 0 --- .../Controls/Cover/CoverView/CoverView.cs | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/Shared/HandyControl_Shared/Controls/Cover/CoverView/CoverView.cs b/src/Shared/HandyControl_Shared/Controls/Cover/CoverView/CoverView.cs index 5cb9c9b7..07825942 100644 --- a/src/Shared/HandyControl_Shared/Controls/Cover/CoverView/CoverView.cs +++ b/src/Shared/HandyControl_Shared/Controls/Cover/CoverView/CoverView.cs @@ -108,7 +108,12 @@ public class CoverView : RegularItemsControl internal static readonly DependencyProperty GroupsProperty = DependencyProperty.Register( "Groups", typeof(int), typeof(CoverView), new FrameworkPropertyMetadata(ValueBoxes.Int5Box, FrameworkPropertyMetadataOptions.AffectsMeasure, - OnGroupsChanged), IsGroupsValid); + OnGroupsChanged, CoerceGroups)); + + private static object CoerceGroups(DependencyObject d, object basevalue) + { + return (int) basevalue < 1 ? 1 : basevalue; + } internal static void OnGroupsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { @@ -118,12 +123,6 @@ public class CoverView : RegularItemsControl } } - private static bool IsGroupsValid(object value) - { - var v = (int) value; - return v >= 1; - } - public int Groups { get => (int) GetValue(GroupsProperty);