2017-02-15 9 views
0

Mordern UI 템플리트를 사용하여 Visual Studio 2013 WPF 응용 프로그램에서 작업하고 있습니다. 나는 형태의 아이콘을 설정 는 디버그, 오류가 나타납니다현대 창에서 양식 아이콘을 설정하는 방법

내 소스 코드입니다 :

내가 "아이콘"속성을 삭제

<mui:ModernWindow x:Class="DieuBeni002.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:mui="http://firstfloorsoftware.com/ModernUI" 
    Title="mui" IsTitleVisible="True" 
    LogoData="F1 M 24.9015,43.0378L 25.0963,43.4298C 26.1685,49.5853 31.5377,54.2651 38,54.2651C 44.4623,54.2651 49.8315,49.5854 50.9037,43.4299L 51.0985,43.0379C 51.0985,40.7643 52.6921,39.2955 54.9656,39.2955C 56.9428,39.2955 58.1863,41.1792 58.5833,43.0379C 57.6384,52.7654 47.9756,61.75 38,61.75C 28.0244,61.75 18.3616,52.7654 17.4167,43.0378C 17.8137,41.1792 19.0572,39.2954 21.0344,39.2954C 23.3079,39.2954 24.9015,40.7643 24.9015,43.0378 Z M 26.7727,20.5833C 29.8731,20.5833 32.3864,23.0966 32.3864,26.197C 32.3864,29.2973 29.8731,31.8106 26.7727,31.8106C 23.6724,31.8106 21.1591,29.2973 21.1591,26.197C 21.1591,23.0966 23.6724,20.5833 26.7727,20.5833 Z M 49.2273,20.5833C 52.3276,20.5833 54.8409,23.0966 54.8409,26.197C 54.8409,29.2973 52.3276,31.8106 49.2273,31.8106C 46.127,31.8106 43.6136,29.2973 43.6136,26.197C 43.6136,23.0966 46.127,20.5833 49.2273,20.5833 Z"   
    ContentSource="/Pages/Home.xaml" Icon="logo.png" > 

<mui:ModernWindow.MenuLinkGroups> 
    <mui:LinkGroup DisplayName="welcome"> 
     <mui:LinkGroup.Links> 
      <mui:Link DisplayName="home" Source="/Pages/Home.xaml" /> 
     </mui:LinkGroup.Links> 
    </mui:LinkGroup> 
    <mui:LinkGroup DisplayName="settings" GroupKey="settings"> 
     <mui:LinkGroup.Links> 
      <mui:Link DisplayName="software" Source="/Pages/SettingsPage.xaml" /> 
     </mui:LinkGroup.Links> 
    </mui:LinkGroup> 
</mui:ModernWindow.MenuLinkGroups> 

<mui:ModernWindow.TitleLinks> 
    <mui:Link DisplayName="settings" Source="/Pages/SettingsPage.xaml" /> 
    <mui:Link DisplayName="help" Source="https://github.com/firstfloorsoftware/mui" /> 
</mui:ModernWindow.TitleLinks> 
는, 디버그가 잘 작동이되지만 아이콘이 나타나지 않습니다 Windows 작업 표시 줄. 도와주세요

+2

무엇이 오류입니까? – Ron

+0

첫 번째 정상 확인 : 올바른 디렉토리에 logo.png이 있습니까? 그것이 존재합니까? 아마도 로고를 리소스로 추가하고 거기에서 사용해야합니까? – KettuJKL

+0

이미 정상적인 확인 완료 – JorSofts

답변

0

코드 비헤이비어에서 Icon 속성을 설정하는 것이 더 쉬운 것으로 나타났습니다.

예. 이 System.Drawing.Bitmap 형식으로 반환되며 아이콘 System.Windows.Media.ImageSource 유형을 기대하고 있기 때문에

public partial class MainWindow 
    : ModernWindow 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     Icon = DieuBeni002.Properties.Resources.logo.ToImageSource(); 
    } 
} 

우리는 로고를 변환해야합니다.

internal static class IconUtilities 
{ 
    public static ImageSource ToImageSource(this Bitmap bitmap) 
    { 
     if (bitmap == null) throw new ArgumentNullException("bitmap"); 

     return Imaging.CreateBitmapSourceFromHBitmap(bitmap.GetHbitmap(), IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()); 
    } 
} 

P. 아이콘 유형을 변환하려면 here으로 설명 된 제안을 사용할 수 있습니다.