سؤال

وكيف العديد من نوع من الفرش التدرج متوفرة مثل 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 وينبغي لها أن تعمل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top