9

我正在尝试使用 MahApps.Metro 创建新的 WPF 应用程序。我完全按照快速入门指南(http://mahapps.com/MahApps.Metro/guides/quick-start.html)中的描述进行操作:

  • 将来自 Nuget 的 MahApps.Metro 包添加到项目中。
  • 添加 xmlns 命名空间并将 Window 替换为 MetroWindow。

此时我可以运行应用程序,但窗口是透明的。标题栏文本和按钮可见(并且按钮没有样式),但背景是透明的。

  • 为 Window 添加合并的字典代码。

之后,我在启动时收到异常:

System.IOException
{"Cannot locate resource 'styles/colours.xaml'."}

似乎由于某种原因它无法在程序集中找到资源。但我不明白为什么。

4

1 回答 1

14

来自维基

“颜色”->“颜色”

是的,我们都改成ColoursColors!颜色的命名不一致,所以我们决定更改命名。资源字典也从Colours.xamlColors.xaml

0.11.0的发行说明

快速如何

应用

<Application x:Class="WpfApplication.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
  <Application.Resources>
    <ResourceDictionary>
      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
        <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />
        <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" />
        <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
        <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
      </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
  </Application.Resources>
</Application>

主窗口

<controls:MetroWindow x:Class="WpfApplication.MainWindow"
                      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                      xmlns:controls="http://metro.mahapps.com/winfx/xaml/controls"
                      Title="MainWindow"
                      Height="600"
                      Width="800">
  <Grid>
    <!-- now your content -->

  </Grid>
</controls:MetroWindow>
于 2013-12-04T14:06:28.957 回答