按钮边框在 XAML/C# 中被切断

Button Border being cut off in XAML/C#

我正在 XAML/C# 中使用 Visual Studio Community 2013 设计一个 Windows Phone 8.1 应用程序,我正在使用一些按钮。出于某种原因,当我将应用程序部署到我的 phone 时,一些按钮边框被切断了。这是相关代码:

    <Grid.ColumnDefinitions>
            <ColumnDefinition Width="11*"/>
            <ColumnDefinition Width="11*"/>
            <ColumnDefinition Width="11*"/>
            <ColumnDefinition Width="11*"/>
        </Grid.ColumnDefinitions>

<Button x:Name="MiddleButton" HorizontalAlignment="Stretch" Margin="10,0" VerticalAlignment="Bottom" Height="140" Background="#FF25A618" FontSize="22" ClickMode="Press" BorderBrush="#FF856767" Foreground="White" Content="2" FontFamily="Global User Interface" Grid.ColumnSpan="2" Grid.Column="1" Padding="0"/>
        <Button x:Name="RightButton" Content="3" HorizontalAlignment="Stretch" Margin="0" VerticalAlignment="Bottom" Height="140" Background="#FF0686A2" FontSize="22" ClickMode="Press" BorderBrush="#FF856767" FontFamily="Global User Interface" Grid.Column="3" Padding="0"/>
        <Button x:Name="LeftButton" Content="1" HorizontalAlignment="Stretch" Margin="0" VerticalAlignment="Bottom" Height="140" Background="#FFCB0B0B" FontSize="22" ClickMode="Press" BorderBrush="#FF856767" FontFamily="Global User Interface" Padding="0" UseLayoutRounding="True"/>

我已经尝试更改按钮的 Horizo​​ntalAlignment 属性,并更改边距,以便在按钮和屏幕的两侧之间有更多 space,但 LeftButton 的至少一个边框和RightButton 总是被切断。通过这些对齐属性,每个按钮的右边框都被切掉了。 是什么导致边框被切断,我该如何解决?

按钮在其默认样式中定义了 MinWith

<Setter Property="MinWidth" Value="{ThemeResource PhoneButtonMinWidth}"/>

定义为 109,因此比您的网格中的 space 大:

<x:Double x:Key="PhoneButtonMinWidth">109</x:Double>

只需设置一个与您的内容匹配的新 MinWidth

<Button MinWidth="10" ... />