Pourquoi ne auto Zoom/Défilement fonctionne pas pour mon Tableau?

pour faire court, j'ai vérifié sur le "WinFormsChartSamples" fourni par Microsoft. Ce que je voulais savoir, c'est comment faire pour activer le zoom et le défilement pour Chartcontrols. L'exemple qui est indiqué, il est assez court.

using System.Windows.Forms.DataVisualization.Charting;
...

//Set automatic zooming
chart1.ChartAreas["Default"].AxisX.ScaleView.Zoomable = true;
chart1.ChartAreas["Default"].AxisY.ScaleView.Zoomable = true;

//Set automatic scrolling 
chart1.ChartAreas["Default"].CursorX.AutoScroll = true;
chart1.ChartAreas["Default"].CursorY.AutoScroll = true;

...

J'ai essayé et rien ne s'est passé, pas de zoom et pas de défilement. J'ai essayé deux choses:

  1. Dans Form1.Le concepteur.cs, j'ai ajouté cette information pour le graphique.

        chartArea1.Name = "ChartArea1";
        chartArea1.CursorX.AutoScroll = true;
        chartArea1.CursorY.AutoScroll = true;
    
        chartArea1.AxisX.ScaleView.Zoomable = true;
        chartArea1.AxisY.ScaleView.Zoomable = true;
    
        this.chart1.ChartAreas.Add(chartArea1);
        this.chart1.Cursor = System.Windows.Forms.Cursors.Cross;
        legend1.Name = "Legend1";
        this.chart1.Legends.Add(legend1);
        this.chart1.Location = new System.Drawing.Point(297, 62);
        this.chart1.Name = "chart1";
        series1.ChartArea = "ChartArea1";
        series1.Legend = "Legend1";
        series1.Name = "Series1";
        this.chart1.Series.Add(series1);
        this.chart1.Size = new System.Drawing.Size(963, 668);
        this.chart1.TabIndex = 6;
        this.chart1.Text = "chart1";
  2. J'ai essayé de l'ajouter directement dans le constructeur de Form1.cs.

Peut-être qu'il est important de mentionner que je suis en utilisant OpenFileDialog pour ajouter des données à la série:

private void openToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Stream fileStream = null;
            OpenFileDialog fDialog = new OpenFileDialog();
            fDialog.Title = "Open File..";
            //First the description of the file separated by "|"
            fDialog.Filter = "((ASC files)| *.asc";
            fDialog.InitialDirectory = @"C:\";

            //Show Messagebox if the file was loaded (Source: MSDN - FileDialog.FilterProperty)
            if (fDialog.ShowDialog() == DialogResult.OK)
            {
                MessageBox.Show("The File was loaded successfully.");

                try
                {
                    if ((fileStream = fDialog.OpenFile()) != null)
                    {
                        using (fileStream)
                        {
                            //Insert code for reading the stream here.
                            Spectrum newSpectrum = new Spectrum(chart1.Series.Count, fDialog.FileName,
                               fDialog.SafeFileName, DataHandler.readSpectrumFromFile(fileStream));

                            addSpectrumToView(newSpectrum);

                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }

            }
        }

Tout conseil est le bienvenu, merci d'avance,

BC++

InformationsquelleAutor | 2012-06-12