簡體   English   中英

C#Winform中的Datagrid視圖

[英]Datagrid View in C# winform

如何從Excel或Access文件將數據導入Datagridview或從Datagridview導入數據? 我需要知道導出和導入的代碼。

嘗試這個:

using System;
using System.Data;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            System.Data.OleDb.OleDbConnection MyConnection;
            System.Data.DataSet DtSet;
            System.Data.OleDb.OleDbDataAdapter MyCommand;
            MyConnection = new System.Data.OleDb.OleDbConnection(@"provider=Microsoft.Jet.OLEDB.4.0;Data Source='c:\csharp.net-informations.xls';Extended Properties=Excel 8.0;");
            MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$]", MyConnection);
            MyCommand.TableMappings.Add("Table", "Net-informations.com");
            DtSet = new System.Data.DataSet();
            MyCommand.Fill(DtSet);
            dataGridView1.DataSource = DtSet.Tables[0];
            MyConnection.Close();
        }
    }
}

這是另一個教程或只是使用谷歌

我將嘗試使用Access示例擴展以前的文章:

    DataTable LoadSchemaFromAccess(string szFilePath)
    {

    System.Data.OleDb.OleDbCommand cmd;
    try
    {
        System.Data.OleDb.OleDbConnection cnn  = new    System.Data.OleDb.OleDbConnection(string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data  Source={0};Persist Security Info=False;", szFilePath));
            cnn.Open();
            System.Data.DataTable schemaTable = cnn.GetSchema("Tables");

            cnn.Close();
            return schemaTable;
    }
    catch (exception e)
    {
        MessageBox.Show(e.Message);
        return null;
    }
    finally
    {
        if (cmd != null)
        {
            cmd.Dispose();
        }
    }
}

    string LoadDataFromAccess(string szTableName )
    {
 string   GetData = L"SELECT * FROM " + szTableName;
 System.Data.OleDb.OleDbCommand cmd;
 string szColumns = "";
try
{
    System.Data.OleDb.OleDbConnection cnn = new      System.Data.OleDb.OleDbConnection
        (string.Format(L"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Persist Security Info=False;", szPath));
    cnn.Open();
    System.Data.DataTable dt = new System.Data.DataTable();
    OleDbCommand  cmd = new OleDbCommand();
    cmd.Connection = cnn;
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = GetData;
    OleDbDataAdapter adt = new OleDbDataAdapter(cmd);
    adt.SelectCommand = cmd;
    adt.Fill(dt);
     cnn.Close();
     return dt;
}
catch (exception e)
{
    MessageBox.Show(e.Message);
    return null;
}
finally
{
    if (cmd != null)
     {
        cmd.Dispose();
    }
}
}

希望這會有所幫助。

暫無
暫無

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

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