这可能是一个愚蠢的问题,但我找不到答案......
我刚刚开始使用WPF,并且正在尝试将ResourceDictionary添加到我的项目中。
这一个在这里:
https://monotone.codeplex.com/
所以我下载了zip文件,并将其解压缩到:
MyProjectDir/MonoTone
我已将以下内容添加到App.xaml
<Application x:Class="TestWPF.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:TestWPF"
xmlns:xcad="http://schemas.xceed.com/wpf/xaml/avalondock"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Monotone/Monotone.Colors.xaml" />
<ResourceDictionary Source="Monotone/Monotone.Brushes.xaml" />
<ResourceDictionary Source="Monotone/Monotone.MahApps.xaml" />
<ResourceDictionary Source="Monotone/Monotone.xaml" />
<ResourceDictionary Source="Monotone/Monotone.ExtendedWPFToolkit.xaml" />
<ResourceDictionary Source="Monotone/Monotone.ColorBox.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
如下:
https://monotone.codeplex.com/wikipage?title=Installing%20Monotone&referringTitle=Documentation
现在,Intelsense正在强调xaml路径,但无法找到这些文件。
我添加了对dll的引用。我错过了什么?
谢谢。
答案 0 :(得分:2)
答案 1 :(得分:1)
明确回答您的问题:Visual Studio之所以抱怨是因为您需要将Monotone文件(从发布zip)添加到名为“Monotone”的文件夹下的项目中。 Janis S's answer已经说明了这一点。
不幸的是,Monotone项目包含对其他项目的一些依赖...具体来说,你会注意到它引用了ColorBox控件,可以在CodePlex上找到它,它还取决于一些{{ 3}}程序集。没有这些,你的项目将无法建立。
对外部依赖项的引用的一些示例是:
xmlns:xtk="http://schemas.xceed.com/wpf/xaml/toolkit"
xmlns:nc="http://schemas.ncore.com/wpf/xaml/colorbox"
xmlns:conv="clr-namespace:Xceed.Wpf.Toolkit.Converters;assembly=Xceed.Wpf.Toolkit"
xmlns:Behaviours="clr-namespace:MahApps.Metro.Behaviours"
xmlns:mm="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:mmm="http://metro.mahapps.com/winfx/xaml/shared"
此时您有三个选项
此时选项3可能是最好的选项,因为CodePlex Xceed并且Monotone似乎没有得到维护。快速谷歌搜索会产生一些免费的WPF黑暗主题,这些主题仍在运行,可以代替使用。
如果确实想要使用Monotone,请转到他们的shutting down soon页面并抓取示例应用程序。所有缺少的DLL都包含在该下载中(您需要在项目中包含这些DLL并downloads)。
答案 2 :(得分:0)
我参加聚会可能已经很晚了,但要澄清一下:
我是Monotone(这是我用于开发的IDE的主题,现在已经过时了)的创建者。我不介意您为您的应用程序选择另一个/更好的深色主题,此刻它已经很老了。
Monotone现在已在GitHub上“维护”。好吧,由于我不再使用C#,这时或多或少有些陈旧。但是,如果您(或其他任何人)对此有特定的问题,请随时在GitHub上提交问题或解决该问题的请求。
您只需要添加XAML的文件Monotone.Colors.xaml
,Monotone.Brushes.xaml
和Monotone.xaml
到ResourceDictionary.MergedDictionaries
默认WPF控件。按此顺序包括。如果我没记错的话,必须将文件设置为EmbeddedResource
。就是这样。
Monotone.ExtendedWPFToolkit.xaml
仅在使用ExtendedWPFToolkit控件(并希望为其主题)时才需要。 Monotone.MahApps.xaml
和Monotone.ColorBox.xaml
相同。因此,这些是可选的。它保存在单独的文件中,以避免依赖于您可能不使用的库
您不需要使用DLL来设置标准WPF控件的样式
由于CodePlex的关闭,Wiki-Pages也已消失。我可能会深入研究代码,然后在GitHub上重新创建代码(甚至最好将其添加到仓库本身),以获取有用的文档。
如前所述,SampleApplication包含一个工作示例,您可以将其用作模板和/或了解其工作原理