GridViewにバインドせずにデータを表示する方法
環境:VS2008&VB.NET&ASP
GridViewに手動でテーブルからデータを読みデータバインドせず
DBの値を表示する方法を考えていますがうまくいかず困っています。
(データバインドしたくない理由はデータバインドを行っていると行の挿入や移動ができない認識のためです。)
初心者のため見当違いなことをしているかもしれませんが
それも含めまして質問させていただきます。
質問1
そもそもGridViewでデータバインドせずに手動でデータを表示することは可能でしょうか。
質問2
以下のコードで試しましたが「GridView1.Controls(0).Controls.Add(row1)」でExeptionが発生してしまいました。
手順に不適格な箇所があるのでしょうか。
strSql = "SELECT * FROM Data_Table"
Using connection As New SqlClient.SqlConnection(cnStr)
Dim command As New SqlClient.SqlCommand(strSql, connection)
connection.Open()
Dim dr As SqlClient.SqlDataReader = command.ExecuteReader
While (dr.Read = True)
'データあり
str1 = dr("data1")
str2 = dr("data2")
str3 = dr("data3")
End If
connection.Close()
Dim item1 As DataGridItem
item1 = New DataGridItem(-1, -1, ListItemType.Item)
Dim cell0 As TableCell = New TableCell
item1.Cells.Add(cell0)
Dim cell1 As TableCell = New TableCell
item1.Cells.Add(cell1)
Dim cell2 As TableCell = New TableCell
item1.Cells.Add(cell2)
Dim row1 As New GridViewRow(-1, -1, DataControlRowType.Header, DataControlRowState.Normal)
row1.Cells.Add(cell0)
row1.Cells.Add(cell1)
row1.Cells.Add(cell2)
GridView1.Controls(0).Controls.Add(row1)
End While
End Using
エラーの内容
System.ArgumentOutOfRangeException はユーザー コードによってハンドルされませんでした。
Message="指定された引数は、有効な値の範囲内にありません。 パラメータ名: index"
お力添えをよろしくお願い致します。