Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 滚动条向右移动而不是向左移动_C#_Charts_Scrollbar - Fatal编程技术网

C# 滚动条向右移动而不是向左移动

C# 滚动条向右移动而不是向左移动,c#,charts,scrollbar,C#,Charts,Scrollbar,我制作了一张图表,当收到数据时,它会动态绘制一个峰值。 在这个图表中,我制作了一个滚动条,所以只有20个数据点被及时显示出来 public void Chart() { ChartArea mov = SleepMovChar.ChartAreas["Movement"]; mov.AxisX.ScrollBar.Size = 12; mov.AxisX.ScrollBar.ButtonStyle = ScrollBarButtonStyles.SmallScroll;

我制作了一张图表,当收到数据时,它会动态绘制一个峰值。 在这个图表中,我制作了一个滚动条,所以只有20个数据点被及时显示出来

public void Chart()
{
    ChartArea mov = SleepMovChar.ChartAreas["Movement"];
    mov.AxisX.ScrollBar.Size = 12;
    mov.AxisX.ScrollBar.ButtonStyle = ScrollBarButtonStyles.SmallScroll;
    mov.AxisX.ScrollBar.ButtonStyle = ScrollBarButtonStyles.All ^ ScrollBarButtonStyles.ResetZoom;
    mov.AxisX.ScrollBar.IsPositionedInside = true;
    mov.AxisX.ScrollBar.Enabled = true;
    mov.AxisX.ScaleView.Size = 20;
}

我的问题是,当收到数据时,我希望滚动条向右移动。此时,它会向左移动,因此会显示第一个数据。我只希望显示最新的数据,以便滚动条跟随数据接收

如果希望可视区域跟随新数据(如示波器中的数据),可以设置滚动位置:

Series S1 = SleepMovChar.Series["yourSeriesByNameOrNumber"];
mov.AxisX.ScaleView.Position = S1.Points.Count - mov.AxisX.ScaleView.Size;
无论何时添加数据点,都需要重复此操作