2017-05-23 6 views
-1

큰 열거 형 FontAwesome 라이브러리를 발견하고 내 WPF 응용 프로그램에서이를 Textblocks의 아이콘/이미지에 사용하고 싶습니다. 열거 형은 다음과 같습니다 :텍스트 블록 텍스트 열거 형 열거 형

public enum Type 
{ 
    ... 
    //ExclamationCircle, 0xf06A 
    ExclamationCircle = 0xf06A, 
    //ExclamationTriangle, 0xf071 
    ExclamationTriangle = 0xf071, 
    //Expand, 0xf065 
    Expand = 0xf065, 
    ... 
} 
나는 옆의 HEX 값을 사용하여 (예를 들어 0xf071)을하지 않아도 내 TextBlock의 값을 설정하려면이 열거 형을 사용하고 싶습니다

. 나는 다음과 같은 코드를 추가 할 때

<TextBlock x:Name="tbIcon" FontFamily="{StaticResource FontAwesome}" Text="&#xf071;" Foreground="{StaticResource RedBrush}" FontSize="20" VerticalAlignment="Center" Margin="10" /> 

binding image

, 나는 더 이상 이미지하지만 내가 입력 한 실제 텍스트를 얻을 : 내 XAML에서 내가 원하는 방법을 작동 다음이있다. 장기적으로

incorrect image

public DialogBase(string title, string message, Window owner) 
{ 
    InitializeComponent(); 
    tbIcon.Text = FontAwesome.Type.ExclamationTriangle.AsHexString(); 
} 

public static string AsHexString(this FontAwesome.Type type) 
{ 
    return String.Format(@"\u{0}", ((int)type).ToString("X").ToLower()); 
    // This is returning "\uf071" 
} 

, 나는 그것을 바인딩 할 수 있도록이 새 컨트롤의 공용 속성 만들고 싶어하지만 먼저 작업이 단계를 얻을 수 꿔.

public static string AsHexString(this FontAwesome.Type type) 
{ 
    return String.Format(@"\x{0}", ((int)type).ToString("X").ToLower()); 
    // This is returning "\xf071" 
} 

당신은이 같은 FontFamily을 설정하려고 할 수 있습니다 :

답변

0

시도가 U X 에 변경

<TextBlock x:Name="tbIcon" TextElement.FontFamily="pack://application:,,,/FontAwesome.WPF;component/#FontAwesome" Foreground="{StaticResource RedBrush}" FontSize="20" VerticalAlignment="Center" Margin="10" /> 

그것은 나를 위해 작동 :)