From 63be2d15ad4b965d8faf09dc6e937ec8458d797e Mon Sep 17 00:00:00 2001 From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com> Date: Wed, 15 Jan 2025 22:58:21 +0800 Subject: [PATCH] fix: fix invisible issue when Dot=True & fix some style issues in Badge. --- src/Ursa.Themes.Semi/Controls/Badge.axaml | 30 +++++++++++++++++-- .../Themes/Shared/Badge.axaml | 2 +- .../BadgeContentOverflowConverter.cs | 11 +++---- 3 files changed, 35 insertions(+), 8 deletions(-) diff --git a/src/Ursa.Themes.Semi/Controls/Badge.axaml b/src/Ursa.Themes.Semi/Controls/Badge.axaml index 6fd316a7..adac6233 100644 --- a/src/Ursa.Themes.Semi/Controls/Badge.axaml +++ b/src/Ursa.Themes.Semi/Controls/Badge.axaml @@ -3,7 +3,27 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:converters="clr-namespace:Ursa.Converters;assembly=Ursa" xmlns:u="https://irihi.tech/ursa"> - + + + + + + + + + + + + + + + + + + + @@ -94,7 +114,6 @@ BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" - IsVisible="{Binding Header, RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNotNull}}" RenderTransformOrigin=".5,.5" /> @@ -138,6 +157,12 @@ + + diff --git a/src/Ursa.Themes.Semi/Themes/Shared/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Shared/Badge.axaml index 7c397860..9f1dd5d9 100644 --- a/src/Ursa.Themes.Semi/Themes/Shared/Badge.axaml +++ b/src/Ursa.Themes.Semi/Themes/Shared/Badge.axaml @@ -6,7 +6,7 @@ 18 8 8 - 6,0 + 4,0 1 10 100 diff --git a/src/Ursa/Converters/BadgeContentOverflowConverter.cs b/src/Ursa/Converters/BadgeContentOverflowConverter.cs index 922c44fd..e44d902a 100644 --- a/src/Ursa/Converters/BadgeContentOverflowConverter.cs +++ b/src/Ursa/Converters/BadgeContentOverflowConverter.cs @@ -3,18 +3,19 @@ namespace Ursa.Converters; -public class BadgeContentOverflowConverter: IMultiValueConverter +public class BadgeContentOverflowConverter : IMultiValueConverter { public object? Convert(IList values, Type targetType, object? parameter, CultureInfo culture) { - string overflowMark = parameter is string s ? s : "+"; - if (double.TryParse(values[0]?.ToString(), out var b) && values[1] is int i and > 0) + var overflowMark = parameter as string ?? "+"; + if (double.TryParse(values[0]?.ToString(), out var b) && values[1] is int count and > 0) { - if (b > i) + if (b > count) { - return i + overflowMark; + return $"{count}{overflowMark}"; } } + return values[0]; } } \ No newline at end of file