有時,當我編輯原始模板我不需要改變原有的風格和色彩的控制的一個副本,並想直接引用原有的。編輯WPF控件模板,但使用原來的風格
例如,我想更改ComboBox
模板以在下拉列表中添加一些過濾按鈕,其切換按鈕指的是也複製到文件中的樣式。我想參考原始風格,以便我的XAML
不會過於混亂。
編輯: 因此,這裏是當你選擇編輯副本創建的XAML代碼的一部分。 的控件模板是什麼,我想改變,但我不需要ComboBoxToggleButton風格,並因此對於切換按鈕,我想它的樣式設置爲一個ComboBoxToggleButton風格是從複製。是否有一些名稱空間全部存儲在它們中,還是無法訪問?
<Style x:Key="ComboBoxToggleButton" TargetType="{x:Type ToggleButton}">
...
</Style>
<ControlTemplate x:Key="ComboBoxTemplate" TargetType="{x:Type ComboBox}">
<Grid x:Name="templateRoot" SnapsToDevicePixels="true">
...
<ToggleButton x:Name="toggleButton" ... Style="{StaticResource ResourceKey=ComboBoxToggleButton}"/>
</Grid>
</ControlTemplate>
約想什麼我它像
<Window xmlns:baseStyles="{namespace/url to the default wpf styles}">
<ControlTemplate x:Key="ComboBoxTemplate" TargetType="{x:Type ComboBox}">
<Grid x:Name="templateRoot" SnapsToDevicePixels="true">
...
<ToggleButton x:Name="toggleButton" ... Style="{StaticResource ResourceKey=baseStyles:ComboBoxToggleButton}"/>
</Grid>
<ControlTemplate.Triggers>
...
</ControlTemplate.Triggers>
</ControlTemplate>
可能重複[從默認樣式繼承樣式](http://stackoverflow.com/questions/11581475/inherit-style-from-default-style) –
不,因爲我沒有試圖繼承樣式,我試圖完全刪除複製的樣式,只是引用它所處理的樣式。 –
根據您的進一步解釋,查看答案獲取更多信息。 –