コンポーネントのラインナップ:なぜなら私{TemplateBinding率}にControlTemplateは証拠金の言要素の容器?
-
18-09-2019 - |
質問
って自分のControlTemplateのためのボタンのようになります:
<Style x:Key="LightButtonStyle" TargetType="{x:Type ButtonBase}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border
x:Name="WrappingBorder"
Margin="{TemplateBinding Margin}"
...
>
<ContentPresenter
Content="{TemplateBinding Content}"
...
>
</ContentPresenter>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
今では、この時の設定に余裕のある私のボタンのように:
<Button
Style="{StaticResource LightButtonStyle}"
Margin="20"
>
Hello world!
</Button>
ボタンが実際の倍率-40です。えられているの制御は、実際には、利用率は、Marginプロパティが読み込みボタンの祖先中配置。していたがそれらのコンポーネントのラインナップのデフォルトスタイルで、見るものを使用。
この右側の結論(証拠金の管理だけを正しく配置による容器)?言い換えると、時間を使ってい{TemplateBinding率は}私のスタイルかダブルのマージンょうか? やはり一部のリストとしての類似性が私の制御な利用いただける"周辺世界"のみ)?
いきもMSDNのページで説明する。感謝です。
編集:
といったところかの答えを探る http://msdn.microsoft.com/en-us/library/ms745058.aspx や http://msdn.microsoft.com/en-us/library/ms751709.aspx, ものにならないと思って明示的にこの ない の管理者は、Marginプロパティである 常に 上位またはコンポーネントのラインナップシステム者evaluesで、その影響のレイアウト---
解決
ご結果は、見れば、枠組みを提供しデフォルトのテンプレートをきること Margin
内のテンプレートにバインドされ Padding
物件について調査を進めている。
他のヒント
証拠金の適用によって自動的にレイアウトシステム、制御テンプレートを使用できるパディングです。
<Border x:Name="WrappingBorder" Margin="{TemplateBinding Padding}" ... />
所属していません StackOverflow