簡體   English   中英

將DataGridView綁定到數據庫中的表

[英]Bind DataGridView to a Table in Database

我想將DataGridView綁定到數據庫中的表。 我已經找到了一些與此相關的主題,但無法使其正常工作。 也許我想念一些東西。

我正在構建一個“監視器”,我想在其中查看特定表的任何數據庫更改。 因此,在將數據加載到DataGridView之后,該特定表中的任何更改都應傳播到DataGridView。

看我做了什么:

    SqlDataAdapter daTab;
    DataTable dTable;

    private void button1_Click(object sender, EventArgs e)
    {

        string s;
        s = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\tempDB\Database1.mdf;Integrated Security=True";
        SqlConnection conn= new SqlConnection(s);
        conn.Open();

        daTab = new SqlDataAdapter("Select * From tab", conn);
        dTable = new DataTable();
        daTab.Fill(dTable);
        BindingSource bSource = new BindingSource();
        bSource.DataSource = dTable;
        dgv1.DataSource = bSource;
    }

但是它只會在我運行時更新DataViewGrid

daTab.Fill(dTable);

因此,我可能有兩種選擇:1)使其正常工作(這就是為什么我需要您的幫助)或2)放置一個計時器並運行daTab.Fill(dTable); 在一定的時間間隔。 我特別照顧選項1)。 因此,我將不勝感激。

聽起來您正在使用SQL Server。 如果是這樣,請查看SqlDependency類。 您可以為此類的OnChange事件創建一個委托,並收到有關更改的通知,然后可以將其傳播到GridView。 這是帶有一些示例的關於該主題的出色文章: https ://msdn.microsoft.com/zh-cn/library/62xk7953( v= vs.110).aspx

暫無
暫無

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

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