2010-05-14 55 views
2

我正在研究Silverlight 4中的數據表單,並希望按部分對各個元素進行分組,併爲每個元素分配一個標題。標題由一個TextBlock和一條水平線組成。該行一直運行到表單的邊緣。在Silverlight中的TextBlock後面顯示一行

我試過以下(從這個線程:http://forums.silverlight.net/forums/p/77813/183885.aspx),都沒有成功:

<StackPanel Orientation="Horizontal"/> 
    <TextBlock Text="Section title" /> 
    <Line X1="0" Y1="0" X2="1" Y2="0" Stretch="Fill" Stroke="Black" /> 
</StackPanel> 

知道爲什麼這是不工作?

謝謝!

回答

7

如何使用邊境,而不是1

+0

是的..這是可行的! (在網格中,而不是StackPanel) – 2010-05-14 21:09:15

+0

它也可以在堆棧面板中工作,你可能只需要設置大小。網格可能會爲您設置邊框寬度。 – 2010-05-14 21:26:19

+1

將Horizo​​ntalAlignment =「Stretch」添加到堆疊面板 – David 2010-05-16 18:10:09

0

我很好奇你的帖子,所以我嘗試了自己。當使用StackPanel時,我無法使線拉伸。雖然,我能得到它與網格工作:

<Grid x:Name="LayoutRoot" Background="White"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="20"/> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="100"/> 
     <ColumnDefinition/> 
    </Grid.ColumnDefinitions> 

    <TextBlock Grid.Row="0" Grid.Column="0" Text="Section title" HorizontalAlignment="Right" VerticalAlignment="Center" /> 
    <Line Grid.Row="0" Grid.Column="1" X1="0" Y1="0" X2="1" Y2="0" Stretch="Fill" Stroke="Black" StrokeThickness="1" /> 
</Grid> 
+0

的高度,我想在一個子窗口代碼。它在XAML設計器中呈現得很好。但是,在運行時,子窗口會填滿整個屏幕(水平方向)。解決方法:在ChildWindow控件上設置一個固定的寬度/高度,這不是很好。我還沒有找到一種方法來使它在沒有硬編碼維度的情況下工作。(設置第二列的寬度也起作用)。 – 2010-05-14 19:35:08