Ниже код который создает линию и делит ее поровну на 2 отрезка. Первый отрезок имеет градиент от Красного к оранжевому, второй - от оранжевого к зеленому. Но длины этих отрезков можно указать только в процентном соотношении. Как сделать чтобы, например, красный цвет был первые 50 пикселей, а затем только начинался градиент от красного к зеленому или сразу от оранжевого к зеленому на оставшейся длине линии?
Line line = new Line();
line.StrokeThickness = 10;
line.X1 = 10;
line.X2 = 10;
line.Y1 = 0;
line.Y2 = 200;
grid.Children.Add(line);
LinearGradientBrush linGrBrush = new LinearGradientBrush(Colors.Red, Colors.Green, 90);
linGrBrush.MappingMode = BrushMappingMode.Absolute;
linGrBrush.StartPoint = new Point(0, line.Y1);
linGrBrush.EndPoint = new Point(0, line.Y2);
linGrBrush.GradientStops.Add(new GradientStop(Colors.Red, 0));
linGrBrush.GradientStops.Add(new GradientStop(Colors.Orange, 0.5));
linGrBrush.GradientStops.Add(new GradientStop(Colors.Green, 1));
line.Stroke = linGrBrush;