同じデータグリッド ビュー コントロール System.InvalidOperationException で行を処理しているときに、次の例外が発生します。以下は、 currentRowCollection で選択した行を DataGridViewSelectedRowCollection として コピーするコピー メソッドです。
copy()
{
If (DataGridViewWorkGroupDetails.Rows.Count = 1) Then
Exit Sub
End If
Try
pasteMode = "copy"
currentRowCollection = DataGridViewWorkGroupDetails.SelectedRows
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, "frmworkgroup:copyRowCollectionError")
End Try
}
そして貼り付け方式で
paste()
{
Dim row As DataGridViewRow
Dim myRow As DataGridViewRow
For Each row In currentRowCollection
myRow = row
myRow.Cells.Item(1).Value = String.Empty
DataGridViewWorkGroupDetails.Rows.Insert(DataGridViewWorkGroupDetails.Rows.Count - 1, myRow)
Next
}
貼り付け方法で貼り付け中に、1列目を空の文字列のままにしたい..行をあるデータグリッドビューから別のデータグリッドビューにコピーすると機能しますが、同じデータグリッドビューにコピーすると例外が追加されます。指定された行は既に DataGridView コントロールに属しています