WPF 使用iconfont

WPF 使用iconfont

在WPF项目里使用IconFont(阿里巴巴矢量图标库提供的图标字体),可以按照以下步骤操作:

1. 从IconFont平台下载图标字体

  • 进入IconFont官网,挑选所需图标并添加到购物车。
  • 点击购物车图标,将选中图标添加至项目。
  • 点击项目操作栏中的"下载至本地",获取包含图标字体文件(.ttf)的压缩包。

2. 把字体文件添加到WPF项目

  • 解压缩下载的文件,将.ttf字体文件复制到WPF项目的某个文件夹,例如Fonts

  • 在Visual Studio里,右键单击项目,选择"添加" -> "现有项",把字体文件添加到项目。

  • 选中字体文件,在属性窗口中将"生成操作"设置为"Resource"。

3. 在WPF应用程序中引用字体

可以在App.xaml文件里定义字体资源,这样整个应用程序都能使用。

复制代码
<Application x:Class="YourAppNamespace.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <!-- 定义IconFont字体资源 -->
        <FontFamily x:Key="IconFont">pack://application:,,,/Fonts/#iconfont</FontFamily>
    </Application.Resources>
</Application>

代码解释

  • pack://application:,,,/Fonts/#iconfont:这是WPF里用于引用项目资源的URI格式。Fonts为字体文件所在的文件夹,iconfont是字体的名称。

4. 在界面中使用图标

在XAML文件里,借助TextBlock控件来显示图标。

复制代码
<Window x:Class="YourAppNamespace.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <!-- 使用TextBlock显示图标 -->
        <TextBlock FontFamily="{StaticResource IconFont}" FontSize="36" Text="&#xe600;" />
    </Grid>
</Window>

代码解释

  • FontFamily="{StaticResource IconFont}":引用之前在App.xaml里定义的字体资源。
  • Text="&#xe600;":这里的&#xe600;是IconFont平台上对应图标的Unicode编码。你可以在IconFont平台上复制图标的Unicode编码并替换此处。

按照以上步骤操作,你就能在WPF应用程序中使用IconFont图标了。

相关推荐
★YUI★8 小时前
学习游制作记录(背包UI以及各种物品的存储)8.12
学习·游戏·ui·unity·c#
计算机毕设-小月哥13 小时前
【限时分享:Hadoop+Spark+Vue技术栈电信客服数据分析系统完整实现方案
大数据·vue.js·hadoop·python·信息可视化·spark·计算机毕业设计
凯子坚持 c18 小时前
虚拟机一站式部署Claude Code &可视化UI界面
ui·编辑器·vim
范纹杉想快点毕业1 天前
C 语言主控开发与显控开发能力体系及技术栈详解,STM32、QT、嵌入式、边缘系统显示
stm32·单片机·tcp/ip·microsoft·fpga开发·51单片机·wpf
船长@Quant1 天前
元数据管理与数据治理平台:Apache Atlas 基本搜索 Basic Search
hadoop·数据治理·元数据管理·数据血缘·gdpr合规·apache atlas
weixin_447103582 天前
WPF之绑定!
c#·wpf
DataIntel2 天前
wpf问题记录
wpf
Lx3522 天前
HDFS文件系统优化:提升数据读写性能的5个秘诀
大数据·hadoop·后端
伽蓝_游戏2 天前
UGUI源码剖析(5):事件的旅程——EventSystem的架构与输入处理管线
游戏·ui·unity·架构·c#·游戏引擎·.net