下面是代码,我想在其中更改MahApps.Metro pakage的主题颜色。
可以通过更改MahApps的ResourceDictionary源包来更改它。 [/MahApps.Metro ;component/Styles/Accents/Blue.xaml]
现在说它的/Blue.xaml示例......我们可以改变窗口的颜色。到/Red.xaml,/ Yellow.xaml等
那么如何每隔5秒异步更改窗口的颜色?这可能在wpf?
我是wpf和clueless的新手。
<controls:MetroWindow x:Class="NginX.Choose"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
Title="NginX" Height="350" Width="350" ShowMaxRestoreButton="False">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
</Grid>
</controls:MetroWindow>
答案 0 :(得分:0)
您可以通过执行以下操作来替换应用程序的资源字典:
Application.Current.Resources.Clear()
Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary()
{
Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml")
});
将它放入计时器并循环通过Red.xaml,Blue.xaml等