在Datagridview控件中复制和粘贴数据

本文关键字:数据 复制 Datagridview 控件 | 更新日期: 2023-09-27 17:58:03

有什么方法可以让datagridview控件使用Ctrl+CCtrl+V从excel复制和粘贴多个单元格吗?

在Datagridview控件中复制和粘贴数据

如果通过调用Clipboard.GetText()获得simpleExcel内容,它将返回一个字符串。

其中的行将由Linefeeds(''r''n)分隔,字段由Tabs(''t)分隔。

看看下面的代码,这会给你一些可以使用的东西。:

    // Before you press the button copy some excel cells!
    private void button1_Click(object sender, EventArgs e)
    {
        dataGridView1.Rows.Clear();
        dataGridView1.Columns.Clear();
        dataGridView1.Columns.Add("one", "one");
        dataGridView1.Columns.Add("two", "two");
        dataGridView1.Columns.Add("three", "three");
        dataGridView1.Columns.Add("four", "four");
        dataGridView1.Columns.Add("five", "five");
        dataGridView1.Rows.Add(5);
        dataGridView1.Focus();
        dataGridView1.CurrentCell = dataGridView1[1, 1];
        string s = Clipboard.GetText();
        string[] lines = s.Replace("'n", "").Split(''r');
        string[] fields;
        int row = 0;
        int column = 0;
        foreach (string l in lines)
        { 
            fields = l.Split(''t');
            foreach (string f in fields)
                dataGridView1[column++, row].Value = f;
            row++;
            column = 0;
        }
    }

用Control-V粘贴更棘手,从按钮开始!

它将涉及捕获Control-V并对其进行处理;不过,这可能有点难以调试。。