.net 只有前50行从winforms中的datagridview复制到剪贴板
我有一个datagridview myDgv,数据将从数据库填充到它 我正在执行Ctrl+a(全选)和复制(Ctrl+C) 将复制的数据粘贴到excel中时,仅复制前50行数据。.net 只有前50行从winforms中的datagridview复制到剪贴板,.net,vb.net,winforms,datagridview,copy-paste,.net,Vb.net,Winforms,Datagridview,Copy Paste,我有一个datagridview myDgv,数据将从数据库填充到它 我正在执行Ctrl+a(全选)和复制(Ctrl+C) 将复制的数据粘贴到excel中时,仅复制前50行数据。 其余的行是空的 下面是我的keydown事件中的代码 If e.Control AndAlso e.KeyCode = Keys.C Then Dim d As DataObject = myDgv.GetClipboardContent() Clipboard.SetDataObject(d)
其余的行是空的 下面是我的keydown事件中的代码
If e.Control AndAlso e.KeyCode = Keys.C Then
Dim d As DataObject = myDgv.GetClipboardContent()
Clipboard.SetDataObject(d)
e.Handled = True
End If
当我向下滚动网格直到结束(最后一行)并执行Ctrl+C,然后将其粘贴到excel中时,
所有行都将被粘贴
如何继续解决此问题?使用
DataGridView。选择all
Method可使用ctrl+A选择上的所有行
并使用以下事件使按键按下:
void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.C)
{
//call to DataGridView.SelectAll Method
}
}
在Ctrl+A中,我已经处理了“全选”,我甚至尝试添加此行(再次全选),但结果仍然相同。出现空白行。我猜这些行没有加载到缓冲区中。您是否已将datagridview的clipboardcopymode更改为EnableWithoutHeaderText?我有点困惑。DataGridView本机支持CTRL-A和CTRL-C。您不需要编写一行代码来复制数据。您还可以使用ClipboardCopyMode属性设置复制方式。