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图标了。

相关推荐
Scout-leaf7 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
修炼前端秘籍的小帅9 天前
Stitch——Google热门的免费AI UI设计工具
前端·人工智能·ui
B站计算机毕业设计超人9 天前
计算机毕业设计Django+Vue.js高考推荐系统 高考可视化 大数据毕业设计(源码+LW文档+PPT+详细讲解)
大数据·vue.js·hadoop·django·毕业设计·课程设计·推荐算法
B站计算机毕业设计超人9 天前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计
王码码20359 天前
Flutter for OpenHarmony:socket_io_client 实时通信的事实标准(Node.js 后端的最佳拍档) 深度解析与鸿蒙适配指南
android·flutter·ui·华为·node.js·harmonyos
十月南城9 天前
数据湖技术对比——Iceberg、Hudi、Delta的表格格式与维护策略
大数据·数据库·数据仓库·hive·hadoop·spark
王九思9 天前
Hive Thrift Server 介绍
数据仓库·hive·hadoop
Asher05099 天前
Hive核心知识:从基础到实战全解析
数据仓库·hive·hadoop
yumgpkpm9 天前
AI视频生成:Wan 2.2(阿里通义万相)在华为昇腾下的部署?
人工智能·hadoop·elasticsearch·zookeeper·flink·kafka·cloudera
2501_921930839 天前
Flutter for OpenHarmony:第三方库实战 chewie 视频播放器UI组件详解
flutter·ui