我遇到了麻烦我无法找到解决办法(到目前为止我找到的所有内容都与我的问题无关)。出于某种原因,我的Visual Studio(我使用2015社区版和Resharper Ultimate 2015.1.3)在我尝试使用来自外部组件的任何东西时会在设计时向我显示错误和警告,这会阻止我看到窗口。这包括样式和类(例如MahApps的MetroWindow)。当我编译并运行它时,一切都有效。 我可以提供的示例是来自http://www.codeproject.com/Articles/442856/Visual-Studio-Metro-Styles-for-WPF的公开可用的演示代码,但实际上,只使用外部类的任何东西都可以。
我得到的警告是:"汇编' MahApps.Metro'该项目没有引用" - 它明确地被引用。
错误:"名称" MetroWindow"命名空间中不存在" clr-namespace:MahApps.Metro.Controls; assembly = MahApps.Metro"。"
"错误的例子"代码是窗口定义本身,直接取自样本。
<Controls:MetroWindow x:Class="Selen.Wpf.DemoApplication.MainWindow"
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"
xmlns:System="clr-namespace:System;assembly=mscorlib" Title="Enterprise Commander"
Height="800" Width="1000" WindowStartupLocation="CenterScreen" TitleForeground="#999988"
ShowMaxRestoreButton="False">
...
</Controls:MetroWindow>
答案 0 :(得分:0)
至少你可以试试MahApps
xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls"
而不是
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
答案 1 :(得分:0)
答案是删除MahApps并再次使用NuGet添加它 - 我想这就是我将来应该添加外部内容的方法。