Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在WPF中嵌入项目图标_C#_Wpf - Fatal编程技术网

C# 在WPF中嵌入项目图标

C# 在WPF中嵌入项目图标,c#,wpf,C#,Wpf,这个问题让我抓狂,我真的不知道发生了什么-为什么它没有按我认为应该的那样工作 我有一个WPF C#项目。我在解决方案中添加了一个名为“ExtFiles”的目录。此目录包含ICO文件、PNG图像和TTF字体 这三个文件都将“构建操作”设置为“资源”,将“复制到输出目录”设置为“不复制” 我通过以下方式调用XAML中的这3个文件: 对于图标: <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presenta

这个问题让我抓狂,我真的不知道发生了什么-为什么它没有按我认为应该的那样工作

我有一个WPF C#项目。我在解决方案中添加了一个名为“ExtFiles”的目录。此目录包含ICO文件、PNG图像和TTF字体

这三个文件都将“构建操作”设置为“资源”,将“复制到输出目录”设置为“不复制”

我通过以下方式调用XAML中的这3个文件:

对于图标:

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" x:Class="Swiftech_Imperium.MainWindow"
        Title="Imp" Height="435" Width="510" ResizeMode="CanMinimize" WindowStartupLocation="CenterScreen" Icon="pack://application:,,,/ExtFiles/imp.ico"
我得到了这个错误(仅针对图标,如果我可以的话,图标=“..”会启动,但是图像和字体没有应用

'System.Windows.Baml2006.TypeConverterMarkupExtension' threw an exception.' Line number '5' and line position '9'.
我将这3个文件添加为资源(资源,添加文件),并将它们的构建操作设置为“资源”

编辑:

好的……我向前移动了一点

我在参考资料中添加了两个DLL(是的,有两个!)。 将图像/图标/字体移动到单独的文件夹(可能不需要)

但我还是遇到了同样的错误(解析)

原来是我的XAML在调用第二个DLL(我最初忘记将其添加到资源中)

现在,将这两个DLL作为资源,如果我进入引用并将这两个DLL的副本本地设置为False,我会得到一个错误。我可以将第一个DLL(WPFToolkit.DLL)设置为False,但无法对system.windows.controls.datavisualization.toolkit.DLL执行以下操作:(

原因是因为XAML正在调用它:

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" x:Class="Imperium.MainWindow"
        Title="Imperium" Height="435" Width="510" ResizeMode="CanMinimize" WindowStartupLocation="CenterScreen" Icon="pack://application:,,,/ExtFiles/Imp.ico" Closing="Window_Closing" MouseDown="Grid_MouseDown" WindowStyle="None" BorderThickness="1" BorderBrush="Black" Foreground="Black">


我能做什么?

您的包装瓮中的图标错误。它应该是:

pack://application:,,/(限定程序集名称,即My.Project.Executable);组件/ExtFiles/imp.ico

将文件添加到VS project文件夹时,应将其设置为
资源
不复制

这同样适用于图像和字体-tho'我还想说,我没有使用像这样的直接引用加载字体,我不确定它是否能像这样工作。

试试这个: 使用资源将是实现相同任务的不同方法。我想为您提供一个链接来阅读某些msdn文章


谢谢,但不起作用。您是否也尝试了
EmbeddedResource
操作?是否有任何发布设置可供您尝试切换?只是一点提示而已。请注意,这是不鼓励的,因此答案应该是搜索解决方案的终点(而不是另一个参考的中途停留,随着时间的推移,它往往会过时)请考虑在这里添加一个独立的概要,将链接作为参考。
Icon="/Resources/Imp.ico"

Source="/Resources/Logo.png"

FontFamily="/Resources/#DS-Digital"
'System.Windows.Baml2006.TypeConverterMarkupExtension' threw an exception.' Line number '5' and line position '9'.
<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:chartingToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" x:Class="Imperium.MainWindow"
        Title="Imperium" Height="435" Width="510" ResizeMode="CanMinimize" WindowStartupLocation="CenterScreen" Icon="pack://application:,,,/ExtFiles/Imp.ico" Closing="Window_Closing" MouseDown="Grid_MouseDown" WindowStyle="None" BorderThickness="1" BorderBrush="Black" Foreground="Black">