簡體   English   中英

如何在運行時調整ChartArea的大小

[英]How can I resize a ChartArea during runtime

我有一個圖表和一個ChartArea。

我想在Y軸或X軸上調整ChartArea的大小,但我不能這樣做。 我需要一個ChartArea控件元素,可以在運行時使用鼠標調整大小。

我需要在圖表(或ChartArea)上調整元素大小來調整我的ChartArea的大小。

這是一個例子..

  • ..添加一個可移動的HorizontalLineAnnotation作為句柄和..
  • ..編碼AnnotationPositionChanging以將句柄用作兩個 ChartAreas之間的滑塊:

在此輸入圖像描述

在班級定義:

HorizontalLineAnnotation slider =   new HorizontalLineAnnotation();

設置它並添加到Chart

slider.AllowMoving = true;
slider.LineWidth = 2;
slider.LineColor = Color.DarkSlateGray;
slider.X = 0;     
slider.Y = 50;
slider.Width = 100;
chart1.Annotations.Add(slider);

這將滑塊設置在中間的左側,讓它穿過整個圖表。

private void chart1_AnnotationPositionChanging(object sender,
                                               AnnotationPositionChangingEventArgs e)
{
    if (e.Annotation == slider)
    {
        chart1.ChartAreas[0].Position.Height = (float)slider.Y - 4;
        chart1.ChartAreas[1].Position.Height = (float)(100f - slider.Y) - 4;
        chart1.ChartAreas[1].Position.Y = (float)slider.Y;

        chart1.Update();
    }
}

這調整了兩個ChartAreas大小,保留了4%的外部資源。 我有一個Title ,一個頂部停靠的Legend或大Labels你需要提供超過4%...

當然你可以修改它來改變一個ChartArea的大小,雖然我不明白為什么你會想要那個..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM