2009-07-08 40 views
9

Làm cách nào để căn chỉnh theo chiều dọc LabelTextBlock tại Top để dòng văn bản đầu tiên của chúng thẳng hàng?Sắp xếp theo chiều dọc Nhãn và TextBlocks ở trên cùng trong XAML

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="Auto" /> 
     <ColumnDefinition /> 
    </Grid.ColumnDefinitions> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 
    <Label Grid.Column="0" VerticalAlignment="Top">Some Label:</Label> 
    <TextBlock Grid.Column="0" VerticalAlignment="Top">Some text<TextBlock> 
</Grid> 

Đoạn mã trên mang lại cho tôi điều này:

Vertically misaligned Label and TextBlock text http://img156.imageshack.us/img156/4940/labeltextblock.png

Trả lời

17

Không gian thêm xung quanh nhãn xuất phát từ sở hữu Padding. Để xóa không gian, bạn có thể đặt thuộc tính Padding thành "0" trực tiếp trên Label, hoặc, tất nhiên, thiết lập nó thông qua một Style.

+6

Dường như Padding của nhãn được đặt thành 5 theo mặc định và TextBlock được đặt thành 0. Cảm ơn bạn đã trả lời. –

+0

Sự cố bắt đầu khi FontSize khác nhau giữa hai điều khiển. – Shimmy

+1

Cảm ơn bạn đã tiết lộ một trong những bí ẩn của WPF với tôi –

1
<TextBlock> 
<InlineUIContainer BaselineAlignment="Top"><Label Content="Label"/></InlineUIContainer> 
<InlineUIContainer BaselineAlignment="Top"><TextBlock>TextBlock Content</TextBlock>     </InlineUIContainer> 
</TextBlock> 

HTH.

Các vấn đề liên quan