2016-02-28 5 views
7

Ich versuche, einige der Basis bereitgestellten Symbol aus FontIcon Klasse für universelle Windows 10-Anwendungen (die, die wir meist in appbar sehen). Wenn dieser Codeabschnitt ausgeführt wird, wird er ohne Probleme ausgeführt, zeigt aber tatsächlich ein Randquadrat, z. B. ein nicht erkanntes Emoticonzeichen.mit FontIcon Glyph aus Code (C#)

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

Antwort

18

Dies ist das Problem, wie XAML und C# mit den Unicode-Zeichen umgehen. Wenn Sie dies in XAML-Code verwenden, ist es etwa Glyph = "", aber wenn Sie dies im C# -Code verwenden, sollte es wie folgt aussehen: Glyph = "\uE946".

Es gibt kein spezielles Dokument für diese Details, aber einige Fälle auf MSDN & SO Forum haben die gleiche Implementierung: AppBarButton.Icon doesn't change on runtime.

In C# Code hinter müssen wir das Escape-Zeichen verwenden.

+0

Dank es funktionierte perfekt –

+0

@Grace Feng, ich versuche, benutzerdefinierte Schriftart zu verwenden, wie in der Frage auf Server-Seite erwähnt. Dies funktioniert, wenn ich meine Schriftarten installiere, obwohl ich nur auf eine benutzerdefinierte Schriftart verweisen möchte, ohne sie zu installieren. Irgendwelche Tipps? – afr0

-1

Oder in XAML:

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

Konnte nicht von XAML getan werden, da es von einem Server generiert wird –

Verwandte Themen