Как изменить StreamGeometry внутри NumericUpDown Avalonia

У меня есть необходимость изменить стандартный стиль контрола NumericUpDown так чтобы стрелки спинеры были направлены не вверх/вниз, а влево/вправо. У меня получилось обратится по селектору к элементу и изменить StreamGeometry, но после этого пропали все анимации по наведению и нажатию а также пропали границы самих кнопок, я добавил границы но все выглядит не так как на стандартных элементах. Как сделать так чтобы заменить StreamGeometry внутри самой кнопки при этом оставив анимацию и все вытекающие из контрола стили?

    <Window.Resources>
        <StreamGeometry x:Key="LeftArrowIcon">M9,0 L0,10 9,20 10,19 2,10 10,1 z</StreamGeometry>
        <StreamGeometry x:Key="RightArrowIcon">M1,0 L10,10 1,20 0,19 8,10 0,1 z</StreamGeometry>
    </Window.Resources> 
<!-- Стиль для стрелки влево -->
    <Style Selector="NumericUpDown#NumericLeftRight RepeatButton#PART_IncreaseButton">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                    <Border Background="Transparent" VerticalAlignment="Center" HorizontalAlignment="Center" BorderBrush="DimGray" Padding="10 5 12 4" BorderThickness="1,0,0,0">
                        <Border Background="Transparent">
                            <Path Data="{StaticResource LeftArrowIcon}" Fill="Black" />
                        </Border>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- Стиль для стрелки вправо -->
    <Style Selector="NumericUpDown#NumericLeftRight RepeatButton#PART_DecreaseButton">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                    <Border Background="Transparent"  VerticalAlignment="Center" HorizontalAlignment="Center" BorderBrush="DimGray" Padding="12   5 10 4" BorderThickness="1,0,0,0">
                        <Border Background="Transparent">
                            <Path Data="{StaticResource RightArrowIcon}" Fill="Black"/>
                        </Border>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
     <Label HorizontalAlignment="Center" Content="Текст (Влево/Вправо)" />
     <NumericUpDown x:Name="NumericLeftRight" Increment="-1" Value="{Binding XPos1, Mode=TwoWay}" Margin="20,0,20,0"/>

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Mikhail
    <Window.Resources>
            <StreamGeometry x:Key="LeftArrowIcon">M9,0 L0,10 9,20 10,19 2,10 10,1 z</StreamGeometry>
            <StreamGeometry x:Key="RightArrowIcon">M1,0 L10,10 1,20 0,19 8,10 0,1 z</StreamGeometry>


    </Window.Resources>
 <Style Selector="NumericUpDown#NumericLeftRight RepeatButton#PART_IncreaseButton">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate>
                            <RepeatButton
                                IsTabStop="{TemplateBinding IsTabStop}"
                                Theme="{StaticResource FluentButtonSpinnerRepeatButton}"
                                Background="{TemplateBinding Background}"
                                BorderBrush="{TemplateBinding BorderBrush}"
                                BorderThickness="{TemplateBinding BorderThickness}"
                                VerticalAlignment="Stretch"
                                VerticalContentAlignment="Center"
                                Foreground="{TemplateBinding Foreground}"
                                MinWidth="34">
                                <PathIcon Data="{StaticResource LeftArrowIcon}" Width="16" Height="16"/>
                            </RepeatButton>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
    
            <Style Selector="NumericUpDown#NumericLeftRight RepeatButton#PART_DecreaseButton">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate>
                            <RepeatButton
                                IsTabStop="{TemplateBinding IsTabStop}"
                                Theme="{StaticResource FluentButtonSpinnerRepeatButton}"
                                Background="{TemplateBinding Background}"
                                BorderBrush="{TemplateBinding BorderBrush}"
                                BorderThickness="{TemplateBinding BorderThickness}"
                                VerticalAlignment="Stretch"
                                VerticalContentAlignment="Center"
                                Foreground="{TemplateBinding Foreground}"
                                MinWidth="34">
                                <PathIcon Data="{StaticResource RightArrowIcon}" Width="16" Height="16"/>
                            </RepeatButton>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
Надо было просто внутри шаблона сделать не бордер а сам repeatbutton 
→ Ссылка