[C#/WINUI3/.NET8] FontIcon 엘리먼트 : FontFamily/Glyph 속성을 사용해 이모지 아이콘 표시하기


■ FontIcon 엘리먼트의 FontFamily/Glyph 속성을 사용해 이모지 아이콘을 표시하는 방법을 보여준다.

※ 비주얼 스튜디오에서 TestProject(Unpackaged) 모드로 빌드한다.
※ TestProject.csproj 프로젝트 파일에서 WindowsPackageType 태그를 None으로 추가했다.

Item.cs

MainPage.xaml

▶ MainPage.xaml.cs
—————————————————————————————————-
using System.Collections.Generic;

using Microsoft.UI.Xaml.Controls;

namespace TestProject;

/// <summary>
/// 메인 페이지
/// </summary>
public sealed partial class MainPage : Page
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public

#region 생성자 – MainPage()

/// <summary>
/// 생성자
/// </summary>
public MainPage()
{
InitializeComponent();

List<Item> list = new List<Item>();

AddItem(list,127462, 127487);
AddItem(list,127744, 128591);
AddItem(list,128640, 128709);
AddItem(list,129292, 129535);

this.listView.ItemsSource = list;
}

#endregion

//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private

#region 항목 추가하기 – AddItem(targetList, startCode, endCode)

/// <summary>
/// 항목 추가하기
/// </summary>
/// <param name="targetList">타겟 리스트</param>
/// <param name="startCode">시작 코드</param>
/// <param name="endCode">종료 코드</param>
private void AddItem(List<Item> targetList, int startCode, int endCode)
{
for(int i = startCode; i <= endCode; i++)
{
if(i >= 129443 && i <= 129444)
{
continue;
}

if(i >= 129451 && i <= 129453)
{
continue;
}

if(i >= 129483 && i <= 129484)
{
continue;
}

if(i >= 129483 && i <= 129484)
{
continue;
}

string emojiCharacter = char.ConvertFromUtf32(i);

targetList.Add
(
new Item
{
DecimalCode = i.ToString(),
HexadecimalCode = $"U+{i:X4}",
EmojiCharacter = emojiCharacter
}
);
}
}

#endregion
}
—————————————————————————————————-

TestProject.zip

분류

보관함