Windows Phone应用程序栏图标问题

时间:2014-01-20 06:14:07

标签: c# windows-phone-8 windows-phone

我正在Windows Phone 8上开发一个应用程序。问题是应用栏图标没有显示,而是显示十字架的实际图标。有趣的是在设计页面上没关系,但是当我运行应用程序时,它们只是一个十字架。

我已将属性设置为内容而不复制,但仍无效。

<phone:PhoneApplicationPage.ApplicationBar>
     <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Mode="Default" >
         <shell:ApplicationBarIconButton Text="Add"    
                  IconUri="/projectname;component/Assets/DefualtIcons/add.png"/>
         <shell:ApplicationBarIconButton Text="Help" 
                  IconUri="/projectname;component/Assets/DefualtIcons/help.png"/>
         <shell:ApplicationBar.MenuItems>
            <shell:ApplicationBarMenuItem Text="Settings"/>
         </shell:ApplicationBar.MenuItems>
     </shell:ApplicationBar>
 </phone:PhoneApplicationPage.ApplicationBar>

解决方案 对于那些和我有同样问题的人来说,这是决议:

  1. 将属性设置为“内容”,不要复制

  2. 将图像放入图像文件夹中。 (由于某种原因,文件夹名称必须是图像)

  3. 不要将IconUri设置为任何这些。即使你在设计中看到了图标。

    /ProjectName;component/Image/help.png

    〜/图片/ help.png

    ../图像/ help.png

  4. IconUri必须是这样的: /Image/help.png

3 个答案:

答案 0 :(得分:2)

试试这个。假设您已将图标复制到项目中的图像文件夹。将图像属性更改为内容 CopyAlways

<phone:PhoneApplicationPage.ApplicationBar>
     <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Mode="Default" >
         <shell:ApplicationBarIconButton Text="Add"    
                  IconUri="/Images/DefualtIcons/add.png"/>
         <shell:ApplicationBarIconButton Text="Help" 
                  IconUri="/Images/DefualtIcons/help.png"/>
         <shell:ApplicationBar.MenuItems>
            <shell:ApplicationBarMenuItem Text="Settings"/>
         </shell:ApplicationBar.MenuItems>
     </shell:ApplicationBar>
 </phone:PhoneApplicationPage.ApplicationBar>

答案 1 :(得分:1)

我有同样的问题,我通过在项目中添加新的文件夹图像并在这个文件夹中复制这些图像来解决它

<phone:PhoneApplicationPage.ApplicationBar>
     <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Mode="Default" >
         <shell:ApplicationBarIconButton Text="Add"    
                  IconUri="..Image /add.png"/>
         <shell:ApplicationBarIconButton Text="Help" 
                  IconUri="..Image/help.png"/>
         <shell:ApplicationBar.MenuItems>
            <shell:ApplicationBarMenuItem Text="Settings"/>
         </shell:ApplicationBar.MenuItems>
     </shell:ApplicationBar>
 </phone:PhoneApplicationPage.ApplicationBar>

答案 2 :(得分:1)

将add.png和help.png的属性更改为内容。你做的每件事都是正确的,但是你设置IconUri =“/ projectname; component / Assets / DefualtIcons / add.png”是错误的,设置IconUri的方式就是你使用的。仅在将Images属性设置为Resources时才有用。 以下是示例代码,这可能会对您有所帮助。

 <phone:PhoneApplicationPage.ApplicationBar>
         <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Mode="Default" >
             <shell:ApplicationBarIconButton Text="Add"    
                      IconUri="/Assets/DefualtIcons/add.png"/>
             <shell:ApplicationBarIconButton Text="Help" 
                      IconUri="/Assets/DefualtIcons/help.png"/>
             <shell:ApplicationBar.MenuItems>
                <shell:ApplicationBarMenuItem Text="Settings"/>
             </shell:ApplicationBar.MenuItems>
         </shell:ApplicationBar>
     </phone:PhoneApplicationPage.ApplicationBar>