如何实现主题应用程序?

时间:2016-10-07 18:41:43

标签: c# wpf xaml

我正在学习如何使用Wpf.Theme NuGet包在应用程序中实现主题。每当在主题之间切换时,我可以看到对某些控件应用的更改,但它不会影响其他控件。

我使用this question中的示例来实现运行时的更改。如何更改Grid和嵌套子元素等其他元素的背景颜色需要做些什么?

<Grid>
    <DockPanel>
        <StackPanel DockPanel.Dock="Top" Margin="3">
            <ComboBox x:Name="cmbThemes" Margin="4" Width="150" SelectedIndex="0">
                <ComboBoxItem Content="None" />
                <ComboBoxItem Content="BureauBlack" Tag="/Themes/BureauBlack.xaml"/>
                <ComboBoxItem Content="BureauBlue" Tag="/Themes/BureauBlue.xaml"/>
                <ComboBoxItem Content="ExpressionDark" Tag="/Themes/ExpressionDark.xaml"/>
                <ComboBoxItem Content="ExpressionLight" Tag="/Themes/ExpressionLight.xaml"/>
                <ComboBoxItem Content="ShinyBlue" Tag="/Themes/ShinyBlue.xaml"/>
                <ComboBoxItem Content="ShinyRed" Tag="/Themes/ShinyRed.xaml"/>
                <ComboBoxItem Content="WhistlerBlue" Tag="/Themes/WhistlerBlue.xaml"/>
            </ComboBox>
        </StackPanel>
        <StackPanel>
            <TextBox AcceptsReturn="True" Name="txtEditor" >Text</TextBox>
            <Button >Button 1</Button>
            <RadioButton >Radion </RadioButton>
            <TextBlock></TextBlock>
            <CheckBox></CheckBox>
            <Label></Label>
        </StackPanel>
    </DockPanel>
</Grid>

1 个答案:

答案 0 :(得分:1)

我看到了这个:https://github.com/StanislawSwierc/WpfThemesCollection#supported-controls,它显示了支持的控件。请查看您是否使用支持的控件。