在 WPF 中使用 MahApps.Metro.IconPacks 提供的大量圖標
MahApps.Metro.IconPacks
//github.com/MahApps/MahApps.Metro.IconPacks
提供了大量的高質量的圖標供WPF使用,極其方便.
時至今日,已包含29個圖標庫,共25914個圖標.
其提供了一個圖標檢索程序,用於快速找到需要的圖標
選中任意圖標後,圖標上會出現4個按鈕,分別提供了對圖標不同的使用方式.
在 WPF 中常見的使用方式有兩種:
方式1:通過 Nuget 包使用
直接在 vs 中的 Nuget 包管理器中搜索 MahApps.Metro.IconPacks 即可
除了 MahApps.Metro.IconPacks 這個總包之外,還有許多名稱為”MahApps.Metro.IconPacks.圖標庫名”的分包.
如果只需要用到其中一個或部分圖標包的圖標,那麼可以僅安裝所需的分包.
如果需要用到所有的圖標,則可以直接安裝 MahApps.Metro.IconPacks 這個總包,不過代價是程序會引入非常多的dll文件.
在圖標檢索程序中找到所需圖標後,點擊左上角的第一個按鈕,即可將其調用代碼複製到剪切板
例:
複製的內容為:
<iconPacks:PackIconUnicons Kind=”_0Plus” />
將這段內容粘貼到 wpf 的 xaml 中即可調用這個圖標,為了方便展示,這裡我還為其設置了尺寸和顏色.
別忘了如下圖中的紅框中所示引入其命名空間,
方法2:作為 Svg 數據使用
在實際使用中,通常需要同時使用多個圖標庫的圖標,如果採用方法1,就會引入非常多的dll文件.
如果不想引入 dll 文件(不安裝 Nuget 包),又想使用所有的圖標,就需要使用此方法.
找到圖標後,點擊其第四個按鈕
複製的的內容為:
M18,5h1V6a1,1,0,0,0,2,0V5h1a1,1,0,0,0,0-2H21V2a1,1,0,0,0-2,0V3H18a1,1,0,0,0,0,2ZM12.5,6h-1a3,3,0,0,0-3,3v6a3,3,0,0,0,3,3h1a3,3,0,0,0,3-3V9A3,3,0,0,0,12.5,6Zm1,9a1,1,0,0,1-1,1h-1a1,1,0,0,1-1-1V9a1,1,0,0,1,1-1h1a1,1,0,0,1,1,1Zm8.1-6a1,1,0,0,0-.78,1.18,9,9,0,1,1-7-7,1,1,0,1,0,.4-2A10.8,10.8,0,0,0,12,1,11,11,0,1,0,23,12a10.8,10.8,0,0,0-.22-2.2A1,1,0,0,0,21.6,9Z
這是一串Svg格式的Path數據,WPF中的Path對象可以直接使用: