2013-03-29 6 views
5

http://i.stack.imgur.com/2gOLN.pngC# WPF unterschiedliche Größe von IDE nach dem Debuggen?

Ich habe ein Problem mit unterschiedlichen Aussehen in Blend/VS2012 IDE und in Debugging. In IDE steht die Rectangle im Mittelpunkt, aber wenn es kompiliert oder debuggt wird, ist die Größe des Rands unterschiedlich. Aus meiner Sicht tritt dies auf, weil die Größe des Fensterrahmens unterschiedlich ist. Ich möchte dieses Problem wirklich beheben. Irgendwelche Vorschläge?

Vielen Dank.

XAML

<Window x:Class="WpfApplication2.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="202" Width="194"> 
<Grid HorizontalAlignment="Left" Height="171" VerticalAlignment="Top" Width="186"> 
    <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="151" Margin="10,10,0,0" Stroke="Black" VerticalAlignment="Top" Width="166"/> 
</Grid> 

XAML Code Editiert:

<Window x:Class="WpfApplication2.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="202" Width="194"> 
<Grid HorizontalAlignment="Left" Height="171" VerticalAlignment="Top" Width="186"> 
    <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Center" Height="151" Margin="10" Stroke="Black" VerticalAlignment="Center" Width="166"/> 
</Grid> 

Ergebnis ist das gleiche. Ist dieses Problem von meinem PC?

+0

Können Sie XAML-Code bereitstellen? – Xelom

+0

Xelom, Ich habe den XAML-Code hinzugefügt. Danke für Ihre Aufmerksamkeit. – jn4kim

+0

Ändern Sie das Margining auf Margin = "10" und setzen Sie Horizontal und VerticalAlignment auf Stretch oder Center. –

Antwort

5

Ihr Problem hier ist Fenstergröße enthält die Chrome-Größe (Window Border und Sachen wie schließen/max min-Tasten).

Ihr Raster ist daher die Größe, die Sie angefordert haben, aber es passt nicht in die Fenstergröße, die Sie angefordert haben.

konnte ich Ihr Problem beheben, um das Ausgabefenster so aussehen zu lassen, mit Fenstergröße:

Breite: 202 Höhe: 210

auf Windows 8

Allerdings sollten Sie lieber Ihre Fenstergröße

Beispiel zu SizeToContent="WidthAndHeight" gesetzt:

<Window x:Class="WpfApplication4.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:local="clr-namespace:WpfApplication4" 
     x:Name="window" 
     Title="MainWindow" 
     SizeToContent="WidthAndHeight"> 
<Grid HorizontalAlignment="Left" Height="171" VerticalAlignment="Top" Width="186"> 
    <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="151" Margin="10,10,0,0" Stroke="Black" VerticalAlignment="Top" Width="166"/> 
</Grid> 
</Window> 

Sie nehmen also keine Chrome-Größen an, die sich von verschiedenen Windows-Versionen unterscheiden können.

Sie sollten auch Snoop erhalten. Es hilft Ihnen, solche Probleme sehr einfach zu debuggen. Es zeigt einen roten Rahmen an einem Steuerelement, wenn Sie es mit Umschalt + Strg bewegen, so dass Sie das Grid über das sichtbare Fenster hinaus sehen können, während das tatsächliche Element-Layout Ihrer UI angezeigt wird

Image

+0

Danke !! Ich schätze deine Hilfe sehr. – jn4kim

Verwandte Themen