0

を要素で囲まずBorderに上に置く方法はありますか?GridGridBorder

<Border Margin="{Binding ElementName=thisUserControl, Path=PrintMargin}"
        BorderThickness="{Binding ElementName=thisUserControl, 
                             Path=PrintMarginThickness}"
        BorderBrush="LightGray">
    <Grid x:Name="mainGrid"
          Background="{Binding ElementName=thisUserControl, Path=Background}" />
</Border>

グリッドで「BitmapEffect」のようなものを使用できますか? WpfUserControl に「PrintMargin」という名前の境界線を表示するかどうかだけが必要です...

この境界線は表示されているかどうかにかかわらず、おそらくそのさと(ブラシ) を制御する必要があります...

4

2 に答える 2

2

あなたが言及した方法(グリッドの周りの境界線)を実行しても問題はありませんが、本当に必要な場合はBorder、の最後の要素として追加できますGrid

<Grid>
    .. other elements ..
    <Border BorderBrush="DeepPink" BorderThickness="1" />
</Grid>
于 2012-11-02T15:01:22.050 に答える
1

ええと、私はButton数週間前にこれを行いましたが、サンプルをGridコントロールに適応させることができますか?

    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="Button">
                <Border Name="border" 
                        BorderThickness="{TemplateBinding BorderThickness}"
                        Padding="{TemplateBinding Padding}" 
                        BorderBrush="{TemplateBinding BorderBrush}" 
                        CornerRadius="5"
                        Margin="{TemplateBinding Margin}"
                        Background="{TemplateBinding Background}">
                    <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>

編集:Panelの代わりにアプローチを使用する必要があると思いますがContentPresenter、そこから行う方法はわかりませんが、これが多少役立つことを願っています。

于 2012-11-02T15:58:16.853 に答える