我正在使用WPF JumpTask对象,我希望我的Windows 7跳转列表图标是我自己的应用程序中的图标 - 但不是默认的图标。另一个。
那我该怎么做?我想我指定了一个不同的图标资源索引。
但是,我如何将我的图标存储为资源,以及如何知道哪个图标是哪个索引?
答案 0 :(得分:2)
根据MSDN
与JumpTask一起使用的图标必须是 作为本地资源提供。
您只能从单独的资源文件中加载图标。因此,您需要使用图标将IconResourcePath
属性设置为DLL。如果您的图标很少,请使用IconResourceIndex
属性指定所需的图标。
例如,下一个代码
<Application x:Class="YourApp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<JumpList.JumpList>
<JumpList>
<JumpTask Title="TargetApp"
Description="JumpTask to start TargetApp"
ApplicationPath="TargetApp.exe"
IconResourcePath="LibWithIcons.dll"
IconResourceIndex="2" />
</JumpList>
</JumpList.JumpList>
</Application>
将创建JumpList并从 LibWithIcons.dll 设置为JumpTask项目 TargetApp 第三图标(基于空的计算)。顺便说一句,如果JumpTask启动另一个应用程序,通常IconResourcePath
被设置为该应用程序的可执行文件,因此它将显示图标:
<JumpTask Title="TargetApp"
Description="JumpTask to start TargetApp"
ApplicationPath="TargetApp.exe"
IconResourcePath="TargetApp.exe"
IconResourceIndex="0" />
如何创建MSDN forums上描述的图标DLL。
答案 1 :(得分:1)
它正在Win32资源中查找您的图标,这与托管资源完全不同。看看这篇优秀的文章,了解这些 - 可以创建它们并指定图标顺序。
Embed Icons into WPF Application as Resource
我最终使用了由Einar Eigilson创建的great tool,它允许您在构建后的活动中添加图标作为资源。
值得注意的是,无论我做什么,在调试模式下运行时都无法显示图标。即使嵌入静态win32资源也没有显示主图标之外的任何图标。尝试在释放之前进行测试,然后像我一样拔掉头发。