Wpf 设置XAML提供程序的图标

Wpf 设置XAML提供程序的图标,wpf,xaml,f#,icons,type-providers,Wpf,Xaml,F#,Icons,Type Providers,为了帮助我学习F#,我决定使用XAML提供程序将我的一个C#应用程序转换为F#。除了图像资源外,我只需对XAML进行最小的更改,就可以获得以前拥有的所有功能。我有两个窗口,每个窗口本身都有一个图标。无论我如何尝试,我似乎都无法让应用程序加载所需的组件 XAML: <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.m

为了帮助我学习F#,我决定使用XAML提供程序将我的一个C#应用程序转换为F#。除了图像资源外,我只需对XAML进行最小的更改,就可以获得以前拥有的所有功能。我有两个窗口,每个窗口本身都有一个图标。无论我如何尝试,我似乎都无法让应用程序加载所需的组件

XAML:

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Totally An Application" Height="273" Width="425" Icon="Icon.ico" >

如果我使用通常的图标设置,XAML设计器可以找到该文件,但是当我启动应用程序时,我得到:无法从文本“Icon.ico”创建“Icon”。我也试过”pack://application:、、、/Icon.ico和“/Icon.ico”

图标作为嵌入式资源存在于我的项目根集中,尽管我尝试了内容和资源,只是想看看是否可以更改错误消息


我承认我有点不适应这里的环境,但是我只想在窗口中获得一个图标-当然,必须有一个正确的方法来实现这一点。

WPF资源必须与构建操作
资源
一起设置,而不是
嵌入资源
,就像Windows窗体中的情况一样WPF资源必须与构建操作
资源
一起设置,而不是
嵌入资源
就像Windows窗体中的情况一样

有一个新的XAML提供程序--您可以试试看它是否有效吗?

有一个新的XAML提供程序--您可以试试看它是否有效吗?

您的图标应该作为资源包含,并且“复制到输出目录”选项设置为“复制到更新的目录”。这样可以确保在编译期间复制图标。如果图标位于另一个项目中,则需要应用pack://application 混乱…这似乎是FSharpX的XAML提供程序中的一个缺陷。我已经发布了关于他们GitHub()的错误报告。我会用我得到的回答更新这个问题。你的图标应该作为一个资源包括在内,“复制到输出目录”选项设置为“如果更新,复制”。这样可以确保在编译期间复制图标。如果图标位于另一个项目中,则需要应用pack://application 混乱…这似乎是FSharpX的XAML提供程序中的一个缺陷。我已经发布了关于他们GitHub()的错误报告。我将用我得到的回答更新问题。我尝试使用资源,问题仍在继续。奇怪的是,当我使用C#时,它就起作用了。资源在同一个程序集中吗?如果没有,请尝试执行显式程序集。在创建窗口之前加载该程序集。资源位于同一程序集中。我开始怀疑这是否与类型提供程序有关。我希望避免使用resource,因为它以前是一个.exe应用程序,但如果需要的话,我可能必须使用resource。我尝试使用resource,但问题仍然存在。奇怪的是,当我使用C#时,它就起作用了。资源在同一个程序集中吗?如果没有,请尝试执行显式程序集。在创建窗口之前加载该程序集。资源位于同一程序集中。我开始怀疑这是否与类型提供程序有关。我希望避免使用resource,因为它以前是一个.exe应用程序,但如果需要的话,我可能不得不使用resource。