2017-09-26 12 views
0

Hardcodet NotifyIcon을 사용하고 컨텍스트 메뉴 항목 옆에 이미지를 표시하고 싶습니다. 그러나 어떤 이유로 그들은 나타나지 않습니다.작업 표시 줄의 상황에 맞는 메뉴에 이미지/아이콘을 표시하는 방법

이 코드

<tb:TaskbarIcon x:Name="MyNotifyIcon" Icon="{x:Static p:Resources.frame_01}" ToolTipText="hello world"> 
    <tb:TaskbarIcon.TrayToolTip> 
     <TextBlock Text="{x:Static p:Resources.TraybarTitle}" HorizontalAlignment="Center" VerticalAlignment="Center" /> 
    </tb:TaskbarIcon.TrayToolTip> 

    <tb:TaskbarIcon.ContextMenu> 
     <ContextMenu Background="{StaticResource JITB.SolidColors.Cyan}"> 
      <MenuItem Click="Menu_Open"> 
       <MenuItem.Header> 
        <TextBlock Text="Open" Foreground="White"/> 
       </MenuItem.Header> 
       <MenuItem.Icon> 
        <Image HorizontalAlignment="Left" Source="../../Resources/Icons/Tray-menu-icons-open.ico.png"></Image> 
       </MenuItem.Icon> 
      </MenuItem> 
      <MenuItem Click="Menu_Close"> 
       <MenuItem.Header> 
        <TextBlock Text="Close" Foreground="White"/> 
       </MenuItem.Header> 
       <MenuItem.Icon> 
        <Image Source="../../Resources/Icons/Tray-menu-icons-close.ico.png"></Image> 
       </MenuItem.Icon> 
       </MenuItem> 
     </ContextMenu> 
    </tb:TaskbarIcon.ContextMenu> 
</tb:TaskbarIcon> 

입니다 그리고 이것은 결과입니다

enter image description here

당신이 볼 수 있듯이 - 아니 이미지!

내가 뭘 잘못하고 있니?

<Image HorizontalAlignment="Left" Source="pack://application:,,,/Resources/Icons/Tray-menu-icons-open.ico.png" /> 

또는 절대 경로 :

+1

상대 경로 대신 절대 경로를 소스에 넣으려고 했습니까? – Mishka

+0

이미지 파일의 Build Action을'Resource'로 설정 한 다음 경로에서'../ ..'부분을 제거하십시오. – Clemens

+0

다음 경로를 시도하십시오. Source = "/ Resources/Icons/Tray-menu-icons-open.ico.png">. 또는 : Source = "pack : // application : ,,,/Resources/Icons/Tray-menu-icons-open.ico.png". 당신의 이미지는 실제로 ".ico.png"라는 이름입니까? – mm8

답변

0

봅니다 팩 URI 사용하는

또한
<Image HorizontalAlignment="Left" Source="/Resources/Icons/Tray-menu-icons-open.ico.png" /> 

하는 이미지의 Build Action 속성이 "자원"으로 설정되어 있는지 확인하고을 경로 및 파일 이름이 올바른지 확인하십시오.

+1

XAML에서 'pack : // application : ,,,'접두사는 실제로 필요하지 않습니다. 자동으로 추가되기 때문입니다. 따라서 절대 경로는 암시 적으로 어셈블리 리소스 파일 팩 URI입니다. – Clemens