2016-08-31 17 views
0

グリッドビューでチェックボックスがオンになっているかどうかをチェックしていて、データテーブルに追加するようにチェックされていますか。チェックボックスがオンの場合、グリッドビューからデータテーブルに追加します。

チェックボックスは、行のためにオフになっているとき、私はエラーを取得していますが:

を何行が1位。ここ

ではありませんが、私のコードです:

 'Creates a new datatable 
     Dim dtQuestions As New DataTable("QuestionsData") 

     'Add columns to datatable 
     For Each cell As TableCell In example.HeaderRow.Cells 

      dtQuestions.Columns.Add(cell.Text) 

     Next 

     For Each row As GridViewRow In example.Rows 

      Dim chkTest As CheckBox = CType(row.FindControl("chkTest"), CheckBox) 
      If chkTest.Checked = True Then 

       dtQuestions.Rows.Add() 

       For i As Integer = 0 To row.Cells.Count - 1 

        Try 

         dtQuestions.Rows(row.RowIndex)(i) = row.Cells(i).Text 

        Catch ex As Exception 

        End Try 


       Next 

      Else 

       'Do not add it to Datatable 

      End If 

     Next 

このコードでエラーが発生します:

dtQuestions.Rows(row.RowIndex)は、(i)= row.Cells(I)の.text

私はこの問題を解決する方法がわかりません。

答えて

0

あなたがデータテーブルに行を追加したい場合は、私は空のtry/catchを削除した

For Each row As GridViewRow In example.Rows 
    Dim chkTest As CheckBox = CType(row.FindControl("chkTest"), CheckBox) 
    If chkTest.Checked = True Then 

     Dim tableRow = dtQuestions.NewRow() 

     For i As Integer = 0 To row.Cells.Count - 1 
      tableRow(i) = row.Cells(i).Text 
     Next 
     dtQuestions.Rows.Add(tableRow) 
    End If 
Next 

お知らせにこのコードを記述する必要があります。それは単にあなたの問題を隠しているので、それをしないでください。

+1

ありがとうございました!受け入れます。 –

関連する問題