3

テスト アプリケーションで極座標チャートを使用したいと考えています。「X」という名前の列がx値メンバーを提供し、他の列がy値メンバーである必要があるいくつかの列を持つデータテーブルがあります。MSDN でチュートリアルを見つけましたが、実際には機能しません。

chart1.DataBindTable(dt, "X");

コンパイルされません。どんなヒントでも大歓迎です。ありがとうございます。

コードは次のとおりです。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;

namespace PolarChartTest_01
{
    public partial class Form1 : Form
    {
    public DataTable dt;
    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        dt.Rows.Clear();
        dt.Columns.Clear();
        chart1.Series.Clear();

        dt.Columns.Add("X", typeof(int));
        dt.Columns.Add("Y", typeof(int));

        for (int j = 0; j < 7; j++)
        {
            DataRow dr = dt.NewRow();

            dr["X"] = j * 45;
            dr["Y"] = j;
            dt.Rows.Add(dr);

        }

        chart1.DataBindTable(dt, "X");
    }
}

}

4

3 に答える 3

5

DataTable は IEnumerable インターフェイスを実装していないため、コンパイルされません。試す:

var enumerableTable = (dt as System.ComponentModel.IListSource).GetList();
chart1.DataBindTable(enumerableTable , "X");
于 2012-10-14T09:28:56.320 に答える