首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重用DataGridView

重用DataGridView
EN

Stack Overflow用户
提问于 2014-03-14 09:54:11
回答 1查看 329关注 0票数 0

我有一个带有TabControlDataGridView的自定义控件,我已经将其添加到名为"DGV“的WinForm中,并在该控件上编写了两个方法,如下所示:

代码语言:javascript
复制
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";
}

因此,在我的表单中,我这样做:

代码语言:javascript
复制
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或找到一个更好的方法来做我想要的。

EN

回答 1

Stack Overflow用户

发布于 2014-03-14 10:33:36

查看DataSet类并将您的数据添加到其中。将数据网格视图绑定到一个数据集,并使用dgv的任意组合来编辑、选择、修改和传递选定的值等

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22394697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档