Approved
Last Updated: 07 Apr 2017 10:12 by ADMIN
How to reproduce:
public partial class Form1 : Form
    {
        private RangeSelectorViewElement chartElement;

        public Form1()
        {
            InitializeComponent();

            new RadControlSpyForm().Show();

            this.SetupChart();

            this.radRangeSelector1.AssociatedControl = this.radChartView1;
            this.chartElement = this.radRangeSelector1.RangeSelectorElement.AssociatedElement as RangeSelectorViewElement;
            this.chartElement.SeriesInitializing += new SeriesInitializingEventHandler(chartElement_SeriesInitializing);
        }

        private void chartElement_SeriesInitializing(object sender, SeriesInitializingEventArgs e)
        {
            e.SeriesType = typeof(LineSeries);
        }

        private void SetupChart()
        {
            LineSeries lineSeries = new LineSeries();
            lineSeries.DataPoints.Add(new CategoricalDataPoint(20, "Jan"));
            lineSeries.DataPoints.Add(new CategoricalDataPoint(22, "Apr"));
            lineSeries.DataPoints.Add(new CategoricalDataPoint(12, "Jul"));
            lineSeries.DataPoints.Add(new CategoricalDataPoint(19, "Oct"));
            this.radChartView1.Series.Add(lineSeries);

            LineSeries lineSeries2 = new LineSeries();
            lineSeries2.DataPoints.Add(new CategoricalDataPoint(3, "Jan"));
            lineSeries2.DataPoints.Add(new CategoricalDataPoint(1, "Apr"));
            lineSeries2.DataPoints.Add(new CategoricalDataPoint(5, "Jul"));
            lineSeries2.DataPoints.Add(new CategoricalDataPoint(2, "Oct"));
            this.radChartView1.Series.Add(lineSeries2);
        }

        private void radButton1_Click(object sender, EventArgs e)
        {
            this.radRangeSelector1.Height = 100;
            //this.ScaleVerticallyChart(this.chartElement.View, .55);
        }
}

Workaround: zoom out along the Y axis the hosted chart element and pan the view so that all series are visible
private void radButton1_Click(object sender, EventArgs e)
        {
            this.radRangeSelector1.Height = 100;
            this.ScaleVerticallyChart(this.chartElement.View, this.radRangeSelector1.Height / (float)150);
        }

        private void ScaleVerticallyChart(ChartView view, double verticalScaleFactor)
        {
            FieldInfo fiPan = view.GetType().GetField("pan", BindingFlags.NonPublic | BindingFlags.Instance);
            RadPoint pan = (RadPoint)fiPan.GetValue(view);
            FieldInfo fiZoom = view.GetType().GetField("zoom", BindingFlags.NonPublic | BindingFlags.Instance);
            RadSize zoom = (RadSize)fiZoom.GetValue(view);

            double verticalPan = pan.Y * verticalScaleFactor / zoom.Height;
            CartesianArea area = view.GetArea<CartesianArea>();
            if (area != null)
            {
                MethodInfo mi = area.GetType().GetMethod("GetCartesianClipRect", BindingFlags.NonPublic | BindingFlags.Instance);
                RectangleF rect = (RectangleF)mi.Invoke(area, new object[] { });
                SizeF areaSize = rect.Size;
                verticalPan += areaSize.Height - (areaSize.Height * verticalScaleFactor + verticalPan);
            }

            zoom = new RadSize(1, verticalScaleFactor);
            fiZoom.SetValue(view, zoom);
            view.Layout();
        }
Approved
Last Updated: 16 May 2019 05:27 by ADMIN
Approved
Last Updated: 04 Apr 2016 13:12 by ADMIN
To reproduce:

Add a RadChartView and setup drilldown. Add a RadRangeSelector and associate the chart with it. Start the application and drill down, you will see that the layout of the chart is not updated accordingly.

Workaround:

In the Drill event handler save a value whether a drill has occured. On the MouseUp event of RadChartView update the layout of the chart:

private bool drill;
void Chart_Drill(object sender, DrillEventArgs e)
{
    drill = true;
}

void Chart_MouseUp(object sender, MouseEventArgs e)
{
    if (this.drill)
    {
        Application.DoEvents();
        (this.rangeSelector.RangeSelectorElement.AssociatedElement as IRangeSelectorElement).UpdateAssociatedView();
    }

    drill = false;
}
Approved
Last Updated: 30 Mar 2016 10:47 by ADMIN
ADMIN
Created by: Peter
Comments: 0
Category: RangeSelector
Type: Bug Report
1

			
Approved
Last Updated: 12 Jul 2018 11:44 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: RangeSelector
Type: Bug Report
0
To reproduce: when you set the Orientation property to Vertical, the arrow buttons work in the opposite direction. Additionally, you change the range by using the thumbs and try to move the selection, the behavior is not expected. Please refer to the attached gif file.
Approved
Last Updated: 30 Mar 2016 10:47 by ADMIN
Use the following sample code to reproduce the issue:

LineSeries series = new LineSeries();
series.ValueMember = "Value";
series.CategoryMember = "Category";
this.radChartView1.Series.Add(series);

DataTable table = new DataTable();

table.Columns.Add("Category", typeof(int));
table.Columns.Add("Value", typeof(int));
double value = 100;

for (int i = 0; i < 1000; i++)
{
    value += rnd.Next(-3, +4);

    table.Rows.Add(i, value);
}

series.DataSource = table;

this.radRangeSelector1.AssociatedControl = this.radChartView1;
Approved
Last Updated: 16 May 2019 05:33 by ADMIN