partial void GetGradientDatas() { GradientDatas = new List <GradientData>(); var GradientStopColors = UIColorGradient.GetGradientStopColors(); //UIColorGradient for (int i = 0; i < GradientStopColors.Count; i++) { var data = GradientStopColors[i]; GradientDatas.Add(new GradientData((float)data.Offset, new EngineNS.Color4(data.Color.A / 255f, data.Color.R / 255f, data.Color.G / 255f, data.Color.B / 255f))); } GradientDatas.Sort((a, b) => { if (b.Offset > a.Offset) { return(1); } if (b.Offset == a.Offset) { return(0); } else { return(-1); } }); }
partial void SetGradientDatas(List <GradientData> datas) { if (datas == null) { return; } GradientStopCollection GradientStopColors = new GradientStopCollection(); //UIColorGradient for (int i = 0; i < datas.Count; i++) { Color color = new Color(); color.A = (Byte)(datas[i].GradientColor.Alpha * 255); color.R = (Byte)(datas[i].GradientColor.Red * 255); color.G = (Byte)(datas[i].GradientColor.Green * 255); color.B = (Byte)(datas[i].GradientColor.Blue * 255); GradientStopColors.Add(new GradientStop(color, (float)datas[i].Offset)); } UIColorGradient.SetPreDatas(GradientStopColors, UIColorGradientWidth.Width.Value); }