我試圖擴大一個元素來填充Expander.Header
的水平空間。我之前曾問過一個類似的問題,但我後來意識到問題的前提是錯誤的。任何使用Grids
或DockingPanels
似乎都不會影響元素填充Expander.Header
的水平空間的能力。如何擴展一個元素來填充擴展頭?
一些更多挖掘顯示標頭的ContentPresenter
自動設置爲HorizontalAlignment.Left
。我如何去改變這個?
我試圖擴大一個元素來填充Expander.Header
的水平空間。我之前曾問過一個類似的問題,但我後來意識到問題的前提是錯誤的。任何使用Grids
或DockingPanels
似乎都不會影響元素填充Expander.Header
的水平空間的能力。如何擴展一個元素來填充擴展頭?
一些更多挖掘顯示標頭的ContentPresenter
自動設置爲HorizontalAlignment.Left
。我如何去改變這個?
要做到這一點的唯一方法是找到擴展器的源xaml並按照自己想要的方式修改它,創建您自己的擴展器樣式。
你在找什麼是ControlTemplate
。請參閱here.您必須覆蓋Expander
的默認模板。
可以聲明一個模板,將使用以下影響所有Expander
控制:
<ControlTemplate TargetType="Expander">
...
</ControlTemplate>
或者,你可以在一個Style
設置Template
屬性。
<Style TargetType="Expander">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Expander">
...
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>