2009-06-11 16 views
2

在WPF中,我如何修改标准控件的模板,使其遵守当前操作系统的主题?如果我只是在混合中“编辑模板的副本”,它只会给我当前运行主题的模板。它是否正确?所以,当我应用修改后的模板并在不同的主题上运行应用程序时,它总是看起来一样。调整控制模板,仍然尊重操作系统的主题?

对于自定义控件甚至数据模板,问题是相似的。如何提供尊重操作系统所有可能主题的模板?

回答

0

我不认为这是可能的。如果您为控件创建模板,则将替换整个控件模板。

您可以使用样式来配置公开属性,但是如果更改模板,则不再与主题相关。您可以为每个主题创建一个单独的模板覆盖,但是您必须明确定义每个主题,如果Microsoft创建了新主题,则必须创建一个新模板才能与之匹配。

看到我自己的相关问题 - When overriding WPF templates do I have to override each theme’s template separately?