将Datagridview复制到Windows窗体中的剪贴板

时间:2009-12-01 15:23:20

标签: c# datagridview copy-paste

我想将Datagridview选定的行复制到剪贴板并将其粘贴到记事本或Microsoft Word中。实现这一目标的最佳方法是什么?

谢谢..

3 个答案:

答案 0 :(得分:4)

我使用复制菜单项。如果要使用Ctrl + C,则必须实现键盘事件。这是我的代码:

private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{
       foreach (Control myControl in tabControl1.SelectedTab.Controls)
       {
             if (myControl is DataGridView))
             {
                    DataGridView tempdgv = (DataGridView)myControl;
                    DataObject dataObj = tempdgv.GetClipboardContent();
                    try
                    {
                        Clipboard.SetDataObject(dataObj, true);
                    }
                    catch (Exception ex)
                    {
                         // Do Something
                    }
                    finally
                    {
                        if (selectAllToolStripMenuItem.Checked)
                        {
                            selectAllToolStripMenuItem_Click(this, EventArgs.Empty);
                        }

                    }
                }
     }
}

答案 1 :(得分:1)

答案 2 :(得分:1)

这会将名为myDataGridView数据的DataGridView中当前选定的单元格复制到剪贴板。

Clipboard.SetDataObject(myDataGridView.GetClipboardContent())