I'm trying to place textboxes in the rows of a datagrid so that the user can edit the values. Using itemdatabound, I知 able to input the textboxes into the datagrid. The problem is when I try to retrieve the data from the textboxes; I知 unable to do so. In fact, after the postback, the textboxes disappear along with the newly edited values. Why and how can I keep this from happening? The Page_Load event is not linked to the datagrid so that's not the reason for losing my textboxes. Below are two code snippets from my app written in VB.NET. I知 using Visual Studio.Net 2003.
Private Sub dgMonthly_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgMonthly.ItemDataBound
Dim i As Integer
For i = 0 To e.Item.Cells.Count - 2
If e.Item.Cells(0).Text = "Plan" Or e.Item.Cells(0).Text = "Calculated Plan" Then
Dim editcell As TableCell = e.Item.Cells(i + 1)
Dim tb As New TextBox
tb.ID = "Plan"
tb.Columns = 5
tb.Text = e.Item.Cells(i + 1).Text
editcell.Controls.Add(tb)
End If
Next
End Sub
Private Sub ibtnUpdate_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ibtnUpdate.Click
Dim dgi As DataGridItem
Dim i As Integer
For Each dgi In dgMonthly.Items
For i = 0 To dgi.Cells.Count - 2
If dgi.Cells(0).Text = "Plan" Or dgi.Cells(0).Text = "Calculated Plan" Then
Dim Test As TextBox
Test = CType(dgi.Cells(i + 1).FindControl("Plan"), TextBox)
End If
Next
Next
End Sub
|