【问题标题】:Custom NavigationView Icons自定义 NavigationView 图标
【发布时间】:2021-11-18 15:08:52
【问题描述】:

我想为 NavigationView 项制作自定义彩色图标。 我从旧帖子中添加了一些代码,如下所示。

       <winui:NavigationViewItem x:Uid="Shell_Main"  helpers:NavHelper.NavigateTo="views:MainPage"   >
            <winui:NavigationViewItem.Content>
                <StackPanel Orientation="Horizontal">
                    
                    <Image Source="/Assets/Icons/HomeIcon.png" Width="25" Height="25"/>
                    
                </StackPanel>
            </winui:NavigationViewItem.Content>
        </winui:NavigationViewItem>

设计器中的更改可以如下图所示。

但是在执行过程中,没有发生任何事情,如下图所示:

怎么了?

【问题讨论】:

  • 请检查文件图标的build action是否为Content
  • @NicoZhu-MSFT Image 文件构建动作默认为 Content
  • 好的,我试试上面的代码,但我无法重现你的问题,请尝试清理你的解决方案或提供minimal reproducible example
  • @NicoZhu-MSFT 该项目只有 4 个空白页面,带有使用 Windows 模板工作室的导航视图。没有修改,就这两行!!!!
  • @NicoZhu-MSFT 当然,非常感谢

标签: c# uwp-xaml navigationview


【解决方案1】:

但是在执行过程中,没有发生如下图所示:

在测试过程中,您的代码是正确的,将图像添加到NavigationViewItem 是自定义导航项图标的一般方法。我们制作了样品,它按预期工作。看起来你的项目有调试问题。请尝试清理您的项目或创建一个新项目。

【讨论】:

    【解决方案2】:

    通过从菜单项中删除 x:Uid 解决如下所示:

    <winui:NavigationViewItem helpers:NavHelper.NavigateTo="views:MainPage" >
         <winui:NavigationViewItem.Content>
               <StackPanel Orientation="Vertical">
                 <Image Source="/Assets/Icons/HomeIcon.png" Width="45" Height="45" >
                                <ToolTipService.ToolTip>
                                    <TextBlock x:Uid="Shell_Main" Text="temp"/>
                                </ToolTipService.ToolTip>
                            </Image>
               </StackPanel>
         </winui:NavigationViewItem.Content>
                    
      </winui:NavigationViewItem>
    
    
      <winui:NavigationViewItem   helpers:NavHelper.NavigateTo="views:ExcelToolsPage">
           <winui:NavigationViewItem.Content>
               <StackPanel Orientation="Vertical">
                  <Image Source="/Assets/Icons/HomeIcon.png" Width="45" Height="45" >
                                <ToolTipService.ToolTip>
                                    <TextBlock x:Uid="Shell_ExcelTools" Text="temp"/>
                                </ToolTipService.ToolTip>
                            </Image>
               </StackPanel>
          </winui:NavigationViewItem.Content>
     </winui:NavigationViewItem>
    

    现在的问题是让这些图标沿着整个pan垂直分布。

    【讨论】:

    • 感谢您与社区分享您的解决方案。最后一行应该作为一个new问题引入。
    • @JeremyCaney 感谢您的评论,最后一行不是问题,而是我想解决的问题,已经解决了,我会在测试后分享。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 2015-09-06
    • 2016-03-21
    • 2018-07-02
    相关资源
    最近更新 更多