我有一个用 C# 编写的 Winforms 应用程序。
在我的表单上,我有两个 DataGridViews
我已经在两个 DataGridView 之间设置了拖放操作,以便从 dataContact 拖动将 int ID 发送到 dataContactBusiness。
但是在 Drop 我得到一个错误'对象未设置为实例'
当我单步执行我的代码时,我可以看到 DragEventArgs e 在其数据中包含 ID,因此我不明白为什么会收到错误消息。
我的代码如下 -
private void dataContact_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
DataGridViewRow row = dataContact.Rows[e.RowIndex];
int conID = (int)row.Cells["ID"].Value;
dataContact.DoDragDrop(conID, DragDropEffects.All);
}
private void dataContactBusiness_DragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.All;
}
private void dataContactBusiness_DragDrop(object sender, DragEventArgs e)
{
string data = e.Data.GetData(DataFormats.Text).ToString(); //...error occurs here
}
'5' 的数据值是我所期望的,那为什么会出错呢?