1

グリッド内の同じ行にある 2 つの異なるフォント スタイルがグリッド行の一番下に配置されることを期待していますが、ご覧のとおり、そうはなっていません!

私が何を変える必要があるのか​​ 誰にもわかりますか?

乾杯、
ベリル

問題

ここに画像の説明を入力

グリッド

<Grid ShowGridLines="True">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>

        <Label Grid.Column="0" Grid.Row="0" Style="{StaticResource SubjectStyle}" .../>
        ...
        <TextBlock Grid.Column="2" Grid.Row="0" Style="{StaticResource DisplayNameStyle}" .../>
        ...
</Grid>

科目のスタイル

<Style x:Key="SubjectStyle" TargetType="{x:Type Label}">
    <Setter Property="FontWeight" Value="Bold" />
    <Setter Property="FontSize" Value="10" />
    <Setter Property="HorizontalAlignment" Value="Left" />
    <Setter Property="VerticalContentAlignment" Value="Bottom" />
    <Setter Property="VerticalAlignment" Value="Bottom" />
    <Setter Property="Width" Value="75" />
</Style>

表示名のスタイル

<Style x:Key="DisplayNameStyle" TargetType="{x:Type TextBlock}">
    <Setter Property="FontSize" Value="16" />
    <Setter Property="HorizontalAlignment" Value="Left" />
    <Setter Property="VerticalAlignment" Value="Bottom" />
    <Setter Property="MinWidth" Value="75" />
</Style>
4

2 に答える 2

2

LabelデフォルトPaddingは 5です。TextBlock'sデフォルトPaddingは 0ですPadding。スタイルにプロパティのセッターを追加するだけです。

于 2012-10-14T22:45:45.627 に答える
1

実行時に Chrome で起動し、F12 キーを押して要素を調べます。テキスト ブロックに影響を与えていない、ラベルに影響を与えるマージンまたはその他の問題がある可能性があります。

さらに: TextBlock ではなく Label を両方とも使用するのはなぜですか?

最悪の場合、マージンをどちらか一方に平手打ちして、ブラウザ間できれいに整列し、検証できるようにします。

于 2012-10-14T22:41:19.600 に答える