标签:collect 参数 rsa threading master sample == 需要 图像
---some words----
1.Alpha:透明度
2.Argb :Alpha red green blue
3.brush: [br??] 刷子,笔画,笔刷
4.fore 前头
5.Foreground 前景色
6.SolidColorBrush:单色笔刷
7.LinearGradientBrush :线性渐变笔刷
8.Linear:直线的,线性的
9.Gradient 梯度,变化,倾斜
--- the end ----
一:Color结构体
c#中用Color这个结构体来定义普通的颜色。
Color color = Color.FromArgb(255,0,0,0);
它是用Alpha通道,红色通道,绿色通道,蓝色通道描述颜色。第一个参数是透明度从0-255 透明-不透明
二:Colors类
c#中用Colors这个类 实现一组预定义的颜色。(就是帮你设置了一些基础的颜色,你直接拿来用就行)
Color color = Colors.Black;
三:Brush类
在写UWP的时候,我们习惯用xaml写样式,在给控件的Background,Foreground这些属性赋值的时候,都是直接写颜色的名字,其实xaml在最后会将我们的字符串转化成对应颜色的笔刷。
<Grid Background="Black"
Name="TestGrid"> </Grid>
这些控件的颜色属性的类型是Brush类型。
四:几种笔刷
SolidColorBrush:纯色笔刷
LinearGradientBrush::线性渐变笔刷
ImageBrush:图像笔刷
这几个类都是Bursh的子类。
这里就介绍第一种:
在后台用代码将上面的Grid的背景颜色改成白色。
//两种方法实现
TestGrid.Background = new SolidColorBrush(Color.FromArgb(255,255,255,255)); TestGrid.Background = new SolidColorBrush(Colors.White);
五:转换
虽然Xaml很方便,但是还是免不了有一些需求,比如要你在后台更改控件的颜色,而你拿到的颜色是#ffffffff 16进制这样的。。既不是Color也不是Brush,想要在后台改颜色就不能像xaml那样写了。你不能将string类型赋值给brush类型。
TestGrid.Background = "#ffffffff"; //这种方法是错误的
我们需要写一个类,用来将string类型的颜色转换成Color类型。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Windows.UI; namespace One.Converter { public class ColorConverter { /// <summary> /// 将16进制的颜色转为成Color类型 /// </summary> /// <param name="stringColor"></param> /// <returns></returns> public Color StringToColor(string stringColor) { string src = stringColor; //因为有些颜色是rgb模式的,没有透明度 if (src.Length == 7) { return Color.FromArgb(255, Byte.Parse(src.Substring(1, 2), System.Globalization.NumberStyles.HexNumber), Byte.Parse(src.Substring(3, 2), System.Globalization.NumberStyles.HexNumber), Byte.Parse(src.Substring(5, 2), System.Globalization.NumberStyles.HexNumber)); } //argb else if(src.Length==9) { return Color.FromArgb( Byte.Parse(src.Substring(1, 2), System.Globalization.NumberStyles.HexNumber), Byte.Parse(src.Substring(3, 2), System.Globalization.NumberStyles.HexNumber), Byte.Parse(src.Substring(5, 2), System.Globalization.NumberStyles.HexNumber), Byte.Parse(src.Substring(7, 2), System.Globalization.NumberStyles.HexNumber)); } throw new ArgumentException("Cannot parse the color"); } } }
微软自己写的Converter地址:https://github.com/Microsoft/Windows-universal-samples/blob/master/Samples/XamlBind/cs/xBindSampleModel/ColorToStringConverter.cs
我写的简单一点,主要给自己项目用的。
标签:collect 参数 rsa threading master sample == 需要 图像
原文地址:http://www.cnblogs.com/MzwCat/p/7624575.html