2016-02-28 24 views
7

我嘗試從FontIcon類中爲通用Windows 10應用程序(我們可以在appbar中看到的那些)添加一些基本提供的圖標。當運行這段代碼時,它運行時沒有任何問題,但實際上,它顯示了一些邊框正方形,如未識別的表情符號。使用FontIcon字形從代碼(C#)

Button infoButton = new Button(); 
infoButton.Content = new FontIcon 
{ 
    FontFamily = new FontFamily("Segoe MDL2 Assets"), 
    Glyph = "", 
    Foreground = new SolidColorBrush(Colors.WhiteSmoke) 
}; 

回答

18

這是XAML和C#如何處理Unicode字符的問題。當你在XAML代碼中使用它時,它類似Glyph = "",但是當你在C#代碼中使用它時,它應該是這樣的:Glyph = "\uE946"

這個細節沒有具體的文檔,但是在MSDN & SO論壇上的一些案例有相同的實現:AppBarButton.Icon doesn't change on runtime

在後面的C#代碼中,我們需要使用轉義字符。

+0

由於它的工作完美 –

+0

@Grace豐,我想在服務器端的問題中提到的自定義字體使用。這工作,如果我安裝我的字體,但我只想引用自定義字體而不安裝。有小費嗎? – afr0

-1

或者在XAML:

<Button> 
    <Button.Content> 
     <FontIcon 
      FontFamily="Segoe MDL2 Assets" 
      Glyph="&#xE946;"/> 
    </Button.Content> 
</Button> 
+0

XAML無法執行此操作,因爲它是從服務器生成的 –