WPF動態綁定矢量圖標
Converter中把值String轉義
public class StringToIconConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value != null) { return Regex.Unescape(StringToUnicode(value.ToString())); } return value; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } /// <summary> /// 字符串轉為UniCode碼字符串 /// </summary> public static string StringToUnicode(string s) { if (!string.IsNullOrEmpty(s)) { //這里把格式 轉為 \ue625 return s.Replace(@"&#x",@"\u").Replace(";",""); } return s; } }
Style
<!--IconStyle-->
<Style x:Key="IconStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="/Framework;component/Fonts/#iconfont"></Setter>
<Setter Property="TextAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="FontSize" Value="16"/>
</Style>
XAML中使用Converter對值進行處理
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"> <TextBlock Text="{Binding Path=Authority_icon,Converter={x:Static local:ConverterUtil.StringToIconConverter}}" Style="{StaticResource IconStyle}"/> </StackPanel>

浙公網安備 33010602011771號