2011-09-23 63 views

回答

0

你可以試試這個讓身高1的矩形,垂直將其調整至底部

<Rectangle Height="1" Stroke="Red" StrokeDashArray="1 2" VerticalAlignment="Bottom" /> 
+0

這是一個黑客攻擊。設置BorderBrush =「0,0,0,1」 – Sinaesthetic

4

你可能想要一個Border,而不是在這種情況下的矩形。

+0

我可以用Border製作點邊框效果嗎?我沒有看到像StrokeDashArray屬性的東西。 –

+0

@LuisAguilar你應該能夠將BorderBrush屬性設置爲任何有效的WPF畫筆。所以,是的,你可以。 MSDN鏈接:http://msdn.microsoft.com/en-us/library/aa970904(v=vs.110).aspx – BrainSlugs83

0

如果你只想在底部一條線,你可以只是其中含有透明邊框(在樹中的某個點)一條線。

+0

爲什麼透明?你可以將BorderThickness設置爲'.BorderThickness = new Thickness(0d,0d,0d,1d)'。 – BrainSlugs83

+0

因爲一條線比邊界更具多面性。 – CodeWarrior

+0

即使這是真的 - 那麼爲什麼邊境呢?不只是說一個網格或其他元素?邊界是否買了什麼?還是僅僅是一種偏好? - 另外:以何種方式更多樣化? (除了能夠對角線等,因爲這在這裏沒有什麼關係 - 但我的意思是,它有筆畫和筆畫厚度 - 這是筆刷和雙筆 - 我在這裏沒有看到更多的多功能性。我錯過了?) – BrainSlugs83

18
<Border BorderThickness="0,0,0,1"> 
    <!-- Content --> 
</Border> 

可以爲Border控制的任何部分設置不同的厚度。

6

既然你想有一個虛線,使用Line對象並將其設置爲您的控件的底部

<Line Stroke="Red" Height="2" Stretch="Fill" X2="1" 
      StrokeDashArray="1 2" VerticalAlignment="Bottom" /> 

如果您不需要虛線,我建議一個BorderBorderThickness屬性設置爲0,0,0,1

+0

該行沒有,我想要的,因爲它也延伸了DashArray。 :(我想,一個自定義的裝飾將是最好的。 – Matt

0

你不應該使用:

  • 一個矩形的Shape(幾何)。
  • 邊框不支持虛線

相反,我會創建一個自定義Decorator(邊境有裝飾)。您可以自定義它的方式,並且它包含一個Child DependencyProperty,因此您可以將其包裝在您的內容中。