2013-05-06 22 views
6

XAML'de harika yazı tipi (http://fortawesome.github.io/Font-Awesome/design.html) kullanmak istiyorum.XAML TextBlock programatik olarak özel karakterler mi ayarlıyor?

Kolayca XAML sonra, bir yazı klasör oluşturarak ve orada yazı ekleyerek, doğrudan XAML aracılığıyla işe gitmek için mümkün olmuştur:

<TextBlock FontFamily="Fonts/#FontAwesome">&#xf000;</TextBlock> 

görüntüler martini cam simgesi. programlı eklemeden Ancak

, sadece gösterir ve şöyle geçersiz sembol:

XAML:

<TextBlock Name="textBlock"></TextBlock> 

C#:

textBlock.FontFamily = new FontFamily("Fonts/#FontAwesome"); 
textBlock.Text = HttpUtility.HtmlDecode("&#xf000;"); 
[], şu çalıştı

ve asıl dizeyi döndüren aşağıdakiler:

textBlock.FontFamily = new FontFamily("Fonts/#FontAwesome"); 
textBlock.Text = "&#xf000;"; 

Herhangi bir fikir?

cevap

4

aşağıdakileri deneyin:

textBlock.FontFamily= new FontFamily(new Uri("pack://application:,,,/"), @"/Fonts/#FontAwesome"); // you should well reference your font else you will get a square 
textBlock.Text = "\uf000";// \u (unicode escape char) instead of &#x 

ve URI işi var gibiydi

t_out.Text = XamlWriter.Save(textBlock); 
+0

sizin textblock XAML kullanacağım önizlemesini istiyorsanız, iki ayrı projelerde yazı vardı, bu yüzden değildi Başlangıçta onları bir bölümde buluyoruz, ancak yazı tipini çoğalttıktan sonra işe yaramış gibiydi. Teşekkürler. – Andrew