Вставить информацию из программы в datagridview - PullRequest
0 голосов
/ 17 апреля 2019

На работе мы используем программу для сопоставления определенных данных.В настоящее время я работаю над решением, чтобы взять эти совпадения и вставить их в базу данных.Но чтобы сделать это, я хочу, чтобы результаты матчей отображались в виде сетки данных.До сих пор я пытался использовать код из этого awnser .

Проблема, с которой я сталкиваюсь, заключается в том, что когда я вставляю данные из соответствующей программы, она устанавливает только 5 столбцов, а это должно быть 7. Это вызвано тем, что последние дваячейки первой строки не содержат данных.

К сожалению, я не могу изменить данные, которые копируются в буфер обмена, поэтому я должен соответствующим образом изменить свой код вставки.

Код, который я сейчас использую, выглядит следующим образом:

    Const tab As Char = ChrW(9)
    Const lineFeed As Char = ChrW(10)
    Const carriageReturn As Char = ChrW(13)

    Dim generate As Boolean = True

    For Each line As String In Clipboard.GetText.Split({lineFeed, carriageReturn}, StringSplitOptions.None)

        Dim values() As String = line.Trim.Split({tab})

        If (generate) Then
            For cell As Integer = 0 To (values.Length - 1)
                DataGridView2.Columns.Add(String.Format("C{0}", cell), cell.ToString())
            Next
            generate = False
        End If

        DataGridView2.Rows.Add(values)

    Next

Может ли кто-нибудь помочь мне с моей проблемой?Любая помощь приветствуется.Если бы это помогло, я мог бы обойтись без первой строки, поэтому, если бы я мог изменить строку буфера обмена, чтобы отбросить первую строку, он все равно работал бы для моего решения.

PS: более длинный код, предоставляемый упомянутымРешение также вызывает ошибки при вставке, поэтому я не использую предоставленный более элегантный код.

1 Ответ

0 голосов
/ 20 апреля 2019

Благодаря @Jimi и @JohnG я смог решить свой вопрос, просто добавив две колонки заранее.

...