簡體   English   中英

重用DataGridView

[英]Re-using a DataGridView

我有一個帶有TabControlDataGridView的自定義控件,該TabControl已添加到名稱為“ DGV”的WinForm ,並在該控件上編寫了兩個方法,如下所示:

public void addTabs(string str)
{
    tabControl1.TabPages.Add(str, str);
    tabControl1.TabPages[str].Controls.Add(dataGridView1);
}

public void fillDataGrid(string Name, long Size1, long Size2)
{
    int cols = dataGridView1.Rows.Add();
    DataGridViewRow row = dataGridView1.Rows[cols];
    row.Cells["FileName"].Value = Name;
    row.Cells["Size"].Value = Size1 + " Kb";
    row.Cells["CompressedSize"].Value = Size2 + " Kb";
    row.Cells["Format"].Value = "Zip";
}

因此,在我的表格中,我正在這樣做:

foreach (FileInfo f in dInfo.GetFiles("*.zip"))
{
    string n = Path.GetFileNameWithoutExtension(f.Name);
    Dgv.addTabs(n);

    string totalPath = Tx.Text + "\\" + f;

    using (ZipFile zip = ZipFile.Read(totalPath))
    {
        foreach (ZipEntry zp in zip)
        {
            Dgv.fillDataGrid(zp.FileName, zp.CompressedSize, zp.UncompressedSize);
        }
    }
}

僅執行tabPage即可將所有數據保存在DataGridView 在循環內創建新的DataGridViews ,然后將它們添加到TabControl可以解決問題,但是問題是我想管理DataGridView單元格中的選定項,因此,我需要找到一種將循環數據正確添加到的方法。相應的tabPage DataGridView 希望有人可以幫助我找到一種重新使用每個選項卡的DataGridView的方法,或者找到一種更好的方法來完成我想要的事情。

簽出DataSet類,然后向其中添加數據。 將您的datagrid視圖綁定到一個數據集,並使用dgvs的任意組合來編輯,選擇,修改和傳遞所選值等

暫無
暫無

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

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