2017-01-24 3 views
2

Ich habe ein sehr einfaches Dockpanel in einem Rahmen. Aber das Dock-Panel scheint rechts und unten einen 1px-Rand zu haben. Ich kann es anscheinend nicht loswerden, indem ich den Rand oder das Dockpanel einstelle oder die Polsterung des Rahmens setze.WPF Dock Panel wierd magin

Was genau es verursacht, und wie kann ich das Problem beheben, ohne es zu hacken (I.E. negativer Marge auf dem Dock-Panel)

<Window x:Class="WPFTest.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     mc:Ignorable="d" 
     Height="350" Width="525"> 
    <Grid> 
     <Border BorderBrush="Black" BorderThickness="2" Padding="0"> 
      <DockPanel Background="Blue" Margin="0"/> 
     </Border> 
    </Grid> 
</Window> 

enter image description here

Kein Stil auf Rand oder DockPanel definiert. Versucht dies an einem brandneuen Projekt und immer noch die weißen Linien zu sehen

+0

Das ist ein interessantes Artefakt. Ich habe Ihren genauen XAML in mein Projekt eingefügt und es wird wie erwartet angezeigt. keine weiße Lücke. Hast du diesen Rand in einem anderen Container, der Dinge wegwerfen könnte? – Stewbob

+0

Können Sie mehr XAML in der Umgebung teilen? Wird irgendwo eine ScaleTransform angewendet? –

+0

@EdPlunkett das ist alles xaml für dieses Fenster. Es ist ein neu erstelltes Projekt mit nur einem MainWindow.xaml – Steve

Antwort

1

Der übliche Weg, wie Sie Lücken in XAML bekommen, ist, weil die Benutzeroberfläche skaliert wird. Wenn Sie nichts finden, das es skalieren könnte (RenderTransform in einem Elternteil, OS-Einstellungen wie Schriftgröße, wahrscheinlich andere Sachen), könnten Sie versuchen, mit UseLayoutRounding and SnapsToDevicePixels zu spielen.