1

Windows Phone 8、XAML。Line水平方向に 2 つのオブジェクトがStackPanel隣り合って引き伸ばされています。どちらにも左右の余白はありません。しかし、それらの間には明らかに目に見えるギャップがあります。XAML は次のようになります。

<StackPanel x:Name="Root" Orientation="Horizontal">

    <Line
        x:Name="LHLine11"
        Margin="0,50,0,0"
        Stretch="Fill"
        Width="10"
        X1="0" X2="1" Y1="0" Y2="0"
        StrokeThickness="1"
        VerticalAlignment="Top"
        Stroke="{StaticResource PhoneButtonBasePressedForegroundBrush}"
        />

    <Line
        x:Name="LHLine1"
        Margin="0,50,0,0"
        Stretch="Fill"
        Width="10"
        X1="0" X2="1" Y1="0" Y2="0"
        StrokeThickness="1"
        VerticalAlignment="Top"
        Stroke="{StaticResource PhoneButtonBasePressedForegroundBrush}"
        />
   </StackPanel>

どうして?

1 つの長い行を作成してみませんか? これは、動作を示す最小限の例です。

4

1 に答える 1

3

Line 要素を使用すると明らかに 1 ピクセルのギャップがある理由については説明できませんが、それはそれとは異なるようです。おそらく測定方法の非常識なバグですか? ただし、線の 1 つの接続側に -1 のマージンを追加することで、いくつかの簡単な回避策があります。または、代わりにそれらを Rectangles に置き換えて、1 ピクセルのギャップなしで同じことを達成することもできます。

<StackPanel Orientation="Horizontal">
    <Rectangle Height="1" Fill="Blue" Width="50"/>
    <Rectangle Height="1" Fill="Red" Width="50"/>
</StackPanel>

うまくいけば、これは少なくともいくらかは役に立ちます。乾杯

于 2012-11-29T16:27:01.360 に答える