其他分享
首页 > 其他分享> > WPF动态绑定矢量图标

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))
            {
                //这里把格式&#xe625; 转为 \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>

 

标签:object,return,string,绑定,value,culture,WPF,public,图标
来源: https://www.cnblogs.com/seanhu/p/14066466.html