C# wpf Brush转Hex字符串的实例代码

这篇博客分享了一个C#代码片段,展示了如何将16进制颜色代码转换为 Brush 对象。通过 BrushToHexConverter 类的 Convert 方法,将RGB颜色值转换为16进制字符串,并在 ConvertBack 方法中抛出未实现异常。示例代码中还展示了如何使用 BrushConverter 将16进制字符串转换回 Brush 对象,用于设置UI元素的背景和前景颜色。
摘要由CSDN通过智能技术生成

我就废话不多说了,大家还是直接看代码吧~

//from MaterialDesignDemo.Converters
 public class BrushToHexConverter : IValueConverter
 {
  public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
  {
   if (value == null) return null;
   string lowerHexString(int i) => i.ToString("X2").ToLower();
   var brush = (SolidColorBrush)value;
   var hex = lowerHexString(brush.Color.R) +
      lowerHexString(brush.Color.G) +
      lowerHexString(brush.Color.B);
   return "#" + hex;
  }
  public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
  {
   throw new NotImplementedException();
  }
 }

补充:C# 16进制转 Brush 颜色对象

代码图如下:

https://img.jbzj.com/file_images/article/202101/20210114145227.jpg

在这里插入图片描述

代码片如下:

BrushConverter brushConverter = new BrushConverter();
    PopupBorder.Background = (Brush)brushConverter.ConvertFromString("#121212");
    MessageLabel.Foreground = (Brush)brushConverter.ConvertFromString("#7d7d7d");
BrushConverter brushConverter = new BrushConverter();
    PopupBorder.Background = (Brush)brushConverter.ConvertFromString("#121212");
    MessageLabel.Foreground = (Brush)brushConverter.ConvertFromString("#7d7d7d");

以上为个人经验,希望能c#教程给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值