【问题标题】:Binding WinForms chart to an Excel column将 WinForms 图表绑定到 Excel 列
【发布时间】:2013-12-06 16:00:26
【问题描述】:

我需要创建一个带有图表控件的应用。我需要将该图表控件绑定到 Excel 电子表格的特定列。到目前为止,我已经将一个 datagridview 绑定到该列。但该列包含整数、空值和字符串。如何仅从该列中提取整数? 代码如下:

DataTable dt = getDataFromXLS(@"C:\myFile.xlsx");
            if (dt != null)
                dataGridView1.DataSource = dt;
                //chart1.DataSource = dt;

private DataTable getDataFromXLS(string fileName)
        {
            try
            {
                string strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" +
                                            "Data Source=" + fileName + "; Extended Properties=Excel 12.0;";
                OleDbConnection cnCSV = new OleDbConnection(strConnectionString);
                cnCSV.Open();
                OleDbCommand cmdSelect = new OleDbCommand(@"Select F9 From [Sheet1$]", cnCSV);
                DataTable dtCSV = new DataTable(); 
                OleDbDataAdapter daCSV = new OleDbDataAdapter();
                daCSV.SelectCommand = cmdSelect;
                daCSV.Fill(dtCSV);
                cnCSV.Close();
                daCSV = null;

                return dtCSV;
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                return null;
            }
            finally { }
        }

【问题讨论】:

  • 在 OleDBCommand 中,'F9' 是我感兴趣的列。
  • 您可以仅从您的帖子中看到“不匹配”。不确定这是否与您的问题有关,但它无济于事。
  • 你能告诉我不匹配的问题吗?
  • 看你的帖子,从颜色的变化就可以看出不匹配的地方。 OleDbCommand cmdSelect = new OleDbCommand(@"Select F9 From [Sheet1$], cnCSV);
  • 编辑帖子以消除不匹配

标签: c# winforms excel datagridview charts


【解决方案1】:

没关系。将图表配置为忽略文本和空值。

【讨论】:

    猜你喜欢
    • 2016-09-23
    • 1970-01-01
    • 1970-01-01
    • 2010-10-10
    • 2011-02-17
    • 1970-01-01
    • 2017-09-22
    • 2011-09-15
    • 2016-01-06
    相关资源
    最近更新 更多