2016-08-08 21 views
0

Ich versuche, eine Schaltfläche 10px von der rechten und unteren Ecke zu platzieren. Im Designer ist die Schaltfläche etwa 10px von der Ecke entfernt, aber nicht im Programm (es ist nur 1px von der Ecke, die ein bisschen schlecht aussieht). Ist das ein Fehler in WPF?Wie platziere ich einen Button richtig unten/rechts?

<Window x:Class="wpftest.test" 
     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" 
     xmlns:local="clr-namespace:wpftest" mc:Ignorable="d" Title="test"    
     Height="300" Width="300"> 
    <Grid> 
     <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="207,239,0,0" VerticalAlignment="Top" Width="75" RenderTransformOrigin="-0.133,-0.75"/> 
    </Grid> 
</Window> 

this is how it looks in the program this is how it looks in the Designer

+0

Das linke Bild ist die Ansicht im Programm. Das Recht ist die Ansicht in Visual Studio 2015 Designer –

+0

Bitte lesen Sie die [Formatierungshilfe] (http://stackoverflow.com/help/formatting). –

Antwort

2

Sie Ihre Schaltfläche basierend auf Margin zu setzen. Versuchen Sie, Ihre Schaltfläche nach unten zu ändern.

<Button x:Name="button" Content="Button" HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="75" Margin="10"/> 
+0

Dies funktioniert zwar, erfordert jedoch eine manuelle Bearbeitung des XAML-Codes. –

+0

@DennisR: Nein, tut es nicht. Außerdem solltest du dich trotzdem damit vertraut machen. –

+0

Drag & Drop-Kontrollen sind in Ordnung. Wenn Sie jedoch sicherstellen möchten, dass Ihre Steuerelemente während der Laufzeit ausgerichtet sind, müssen Sie sich mit dem Ändern von XAML vertraut machen. – AVK

0

bei der Arbeit mit den Rändern, immer bevorzugte nächste Seite. hier für Ihre "rechte Seite" als HorizontalAlignment und "Bottom Side" als VerticalAlignment als nächste.

2

Sie werden XAML-Markup auf jeden Fall verstehen wollen, wenn Sie WPF oder UWP verwenden möchten. Drag and Drop im Designer gibt Ihnen meiner Erfahrung nach selten das, was Sie wirklich wollen. Der Designer und die Eigenschaften sagen Ihnen jedoch genau, was vor sich geht. Haben Sie gesehen, was passiert, wenn Sie Ihr Fenster zur Laufzeit maximieren? Die Schaltfläche wird nicht in der Nähe der unteren, rechten Ecke sein. Es ist immer 207px von links und 239px von oben, wie definiert. Siehe unten für eine kurze Erklärung.

  • Blau - das Objekt ist um eine Entfernung von dieser Kante beschränkt.
  • Rot - der Wert, um den das Objekt eingeschränkt ist.
  • Grün - das Objekt ist nicht auf diese Kante beschränkt.

enter image description here

Wenn Sie Anforderung, dass der Knopf von der rechten Kante und 10px vom Boden 10px werden, können Sie das definieren, indem Sie die „Links“ für die Zwänge, klicken die beabsichtigten Kanten der Verweis auf machen Kanten (klickt sie an, schaltet sie um, also "schalte" links und oben aus) und passt die Werte an. Sie werden wahrscheinlich die Transformation, die der Designer für Sie getan hat, loswerden wollen.

enter image description here