segunda-feira, 7 de novembro de 2011

on

' No evento KeyDown da DataGridView
    Private Sub DataGridView1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles DataGridView1.KeyDown

        ' Caso as teclas pressinadas sejam CTRL+V
        If e.Control AndAlso e.KeyCode = Keys.V Then

             Try

                ' Ciclo nas linhas copiadas
                For Each line As String In Clipboard.GetText.Split(vbNewLine)

                    ' Separa as colunas referentes à linha actual
                    Dim item() As String = line.Trim.Split(vbTab)

                    ' Se o número de colunas for diferente mostra uma mensagem de erro
                    If item.Length <> Me.DataGridView1.ColumnCount Then
                        Dim str As String = "O número de colunas copiadas é diferente" & _
                                        " do número de colunas da DataGridView"
                        Throw New Exception(str)
                    End If

                    ' Adicionar a linha a DataGridView
                    Me.DataGridView1.Rows.Add(item)
                Next

            Catch ex As Exception
                ' Mensagem de erro caso exista
                MessageBox.Show(ex.Message, My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try

        End If

    End Sub

0 comentários:

Postar um comentário