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);
        }