سؤال
وكيف العديد من نوع من الفرش التدرج متوفرة مثل LinearGradientBrush، SolidColorBrush؟ وعندما نقوم بإنشاء GradientStop كيف الإزاحة الأعمال؟
LinearGradientBrush LGB = new LinearGradientBrush();
LGB.StartPoint = new Point(0, 0);
LGB.EndPoint = new Point(0, 1);
LGB.GradientStops.Add(new GradientStop(Color.FromRgb(255,251,255) , 0));
LGB.GradientStops.Add(new GradientStop(Color.FromRgb(206,207,222), 1));
LGB.GradientStops.Add(new GradientStop(Color.FromRgb(0, 247, 0), 2));
rect.Fill = LGB;
لماذا الثلث "Color.FromRgb (0، 247، 0)" لا تعكس؟
يرجى أقترح، حيث كنت مخطئا؟
المحلول
GradientStop.Offset الخاصية هي القيمة التي تتراوح 0،0-1،0. من وثائق MSDN:
<اقتباس فقرة>وقيمة 0.0 تحدد أن توقف يتوضع في بداية متجه الانحدار، بينما تحدد قيمة 1.0 أن توقف يتوضع في نهاية متجه الانحدار.
اقتباس فقرة>وقم بتغيير ثاني محطة لتعويض إلى 0.5 وفي الثالثة الخاصة بك إلى 1.0 وينبغي لها أن تعمل.
لا تنتمي إلى StackOverflow