2010-04-30 5 views
6

Ich verwende ein Trennzeichen, um eine vertikale Linie innerhalb eines Rahmens zu zeichnen. Zuerst war das in Ordnung, weil die Linie zentriert werden musste, aber jetzt muss ich sie an einer benutzerdefinierten X-Position vom linken Rand aus positionieren. Gibt es eine Möglichkeit, das zu tun?WPF Separatorposition

<Border x:Name="border" ClipToBounds="True" Background="White" BorderBrush="Black" BorderThickness="2"> 
    <Separator BorderBrush="Black" BorderThickness="2"> 
     <Separator.LayoutTransform> 
      <RotateTransform Angle="90" /> 
     </Separator.LayoutTransform> 
    </Separator> 
</Border> 

Antwort

4

Ich bin der richtige Weg, nicht sicher, ob availble, aber wenn Sie nicht über die Grenze resizen, könnten Sie eine Marge wie folgt verwenden:

<Border x:Name="border" ClipToBounds="True" Background="White" BorderBrush="Black" BorderThickness="2"> 
      <Separator BorderBrush="Black" BorderThickness="2" Height="2" Margin="0,0,100,0"> 
       <Separator.LayoutTransform> 
        <RotateTransform Angle="90" /> 
       </Separator.LayoutTransform> 
      </Separator> 
     </Border> 
2

Die einfachste Änderung können Sie machen ist nur die Horizontal zu setzen und dann Margins verwenden Sie den Separator (die Standardeinstellung ist 0,2,0,2) zum Ausgleich:

<Border x:Name="border" ClipToBounds="True" Background="White" BorderBrush="Black" BorderThickness="2"> 
    <Separator BorderBrush="Black" BorderThickness="2" HorizontalAlignment="Left" Margin="20,2,0,2" > 
     <Separator.LayoutTransform> 
      <RotateTransform Angle="90" /> 
     </Separator.LayoutTransform> 
    </Separator> 
</Border> 

Es gibt viele andere Möglichkeiten, wie Sie den gleichen visuellen Effekt erzielen könnte, wenn Sie andere Vorraussetzungen.