I am using gridview to load the data from the database. I have done correctly with databind. But this time i am trying to display data by filling the values of cells in rows...
My code is like this:-
Public Sub grid_init()
dim index_flag as integer = 0
curr_user = Welcome_id.Text()
string_split = curr_user.Split("".ToCharArray)(0)
img_green = ("~\Icons\" & "circle_green.ico")
img_orange = ("~\Icons\" & "circle_orange.ico")
img_red = ("~\Icons\" & "circle_red.ico")
GridView1.AllowPaging = True
GridView1.PageSize = 10
cmd = New SqlCommand("SELECT a.curr_datetime, a.site_id, b.site_name, a.dc_volt, a.curr_temp, a.eb_val, a.dc_low, a.hrt_temp, a.curr_dfs, a.curr_dft, a.curr_llop, a.curr_dgonl, a.fa_alarm, a.door_open, a.curr_spare FROM final_test a INNER JOIN site_details b ON a.site_id = b.site_id;", conn)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
da.SelectCommand = cmd
da.Fill(ds, "final_test")
dt = ds.Tables("final_test")
dr = cmd.ExecuteReader
If dr.Read() Then
GridView1.Rows(index_flag).Cells(0).Text = ds.Tables(0).Rows(0).Item("curr_datetime").ToString
GridView1.Rows(index_flag).Cells(1).Text = ds.Tables(0).Rows(0).Item("site_id").ToString
GridView1.Rows(index_flag).Cells(2).Text = ds.Tables(0).Rows(0).Item("site_name").ToString
GridView1.Rows(index_flag).Cells(3).Text = ds.Tables(0).Rows(0).Item("dc_volt").ToString
GridView1.Rows(index_flag).Cells(4).Text = ds.Tables(0).Rows(0).Item("curr_temp").ToString
lcl_ebval = ds.Tables(0).Rows(0).Item("eb_val").ToString
If lcl_ebval = 0 Then
eb_img = img_green
ElseIf lcl_ebval = 1 Then
eb_img = img_red
End If
GridView1.Rows(index_flag).Cells(5).Text = ds.Tables(0).Rows(0).Item("eb_img").ToString
lcl_dclow = ds.Tables(0).Rows(0).Item("dc_low").ToString
If lcl_dclow = 0 Then
dclow_img = img_green
ElseIf lcl_dclow = 1 Then
dclow_img = img_red
End If
GridView1.Rows(index_flag).Cells(6).Text = ds.Tables(0).Rows(0).Item("dclow_img").ToString
lcl_hrt = ds.Tables(0).Rows(0).Item("hrt_temp").ToString
If lcl_hrt = 0 Then
hrt_img = img_green
ElseIf lcl_hrt = 1 Then
hrt_img = img_red
End If
GridView1.Rows(index_flag).Cells(7).Text = ds.Tables(0).Rows(0).Item("hrt_img").ToString
lcl_dfs = ds.Tables(0).Rows(0).Item("curr_dfs").ToString
If lcl_dfs = 0 Then
dfs_img = img_green
ElseIf lcl_dfs = 1 Then
dfs_img = img_red
End If
GridView1.Rows(index_flag).Cells(8).Text = ds.Tables(0).Rows(0).Item("dfs_img").ToString
lcl_dft = ds.Tables(0).Rows(0).Item("curr_dft").ToString
If lcl_dft = 0 Then
dft_img = img_green
Else
dft_img = img_orange
End If
GridView1.Rows(index_flag).Cells(9).Text = ds.Tables(0).Rows(0).Item("dft_img").ToString
lcl_llop = ds.Tables(0).Rows(0).Item("curr_llop").ToString
If lcl_llop = 0 Then
llop_img = img_green
Else
llop_img = img_orange
End If
GridView1.Rows(index_flag).Cells(10).Text = ds.Tables(0).Rows(0).Item("llop_img").ToString
lcl_dgol = ds.Tables(0).Rows(0).Item("curr_dgonl").ToString
If lcl_dgol = 0 Then
dgol_img = img_green
Else
dgol_img = img_orange
End If
GridView1.Rows(index_flag).Cells(11).Text = ds.Tables(0).Rows(0).Item("dgol_img").ToString
lcl_faalarm = ds.Tables(0).Rows(0).Item("fa_alarm").ToString
If lcl_faalarm = 0 Then
falarm_img = img_green
Else
falarm_img = img_red
End If
GridView1.Rows(index_flag).Cells(12).Text = ds.Tables(0).Rows(0).Item("falarm_img").ToString
lcl_door = ds.Tables(0).Rows(0).Item("door_open").ToString
If lcl_door = 0 Then
dopen_img = img_green
Else
dopen_img = img_orange
End If
GridView1.Rows(index_flag).Cells(13).Text = ds.Tables(0).Rows(0).Item("dopen_img").ToString
lcl_spare = ds.Tables(0).Rows(0).Item("curr_spare").ToString
'dt.Load(dr)
'GridView1.DataSource = dt
'GridView1.DataBind()
'Me.DataBind()
' dt.Clear()
index_flag = index_flag + 1
End If
If conn.State = ConnectionState.Open Then
conn.Close()
End If
It displays the error as
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
End Sub