Я пытаюсь связать спецификацию EXCEL с данными dataGridView? Я думаю, что это близко, но я не знаю, почему данные не отображаются в сетке. Я видел несколько сообщений в Stackoverflow, но я не мог заставить их работать. Поэтому я решил привести свой собственный пример и посмотреть, могу ли я заставить кого-то попробовать этот код. Все потребности формы - это кнопка с событием click и dataGridView.Привязка таблицы EXCEL к dataGridView?
Код класса:
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.Net.Mail;
using System.Data.OleDb;
namespace TestExcel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
String name = "Items";
String constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
@"C:\Users\itpr13266\Desktop\test.xls" +
";Extended Properties='Excel 8.0;HDR=YES;';";
OleDbConnection con = new OleDbConnection(constr);
OleDbCommand oconn = new OleDbCommand("Select * From [" + name + "$]", con);
con.Open();
OleDbDataAdapter sda = new OleDbDataAdapter(oconn);
DataTable data = new DataTable();
sda.Fill(data);
dataGridView1.DataSource = data;
}
}
}
Вы пытались добавить 'dataGridView1.DataBind(); 'в конце? –
какая версия excel вы используете? –
см. Код ниже. –