У меня есть текстовое поле, используемое для количественных изменений в корзине покупок, которая находится в форме datagrid. Когда я нажимаю кнопку редактирования, она позволяет изменять текстовое поле. То, что я пытаюсь получить, это измененный текст, чтобы затем заменить исходное количество в моей таблице данных. Я пробовал кучу разных вещей, но не могу получить измененное значение.Как получить данные из текстового поля из Datagrid
Вот код, который в конечном счете изменяет DataTable:
For Each objDR In myDataTable.Rows
If objDR("ItemID") = intItemID Then
objDR("Quantity") = Int32.Parse(myText) 'adding a specific int like 333 works
Exit For
End If
Next
Как уже отмечалось, если поместить в определенное значение, как «333», то изменения количества. Поэтому проблема должна сохраняться в значении текстового поля, которое не удерживается, когда я нажимаю обновление, или, по крайней мере, это то, как я его вижу.
Код для доступа к тексту текстового поля Я пробовал:
Dim myText As String
For Each dataGridItem As DataGridItem In dgCart.Items
myText = CType(dataGridItem.FindControl("txtQuantity"), TextBox).Text
'myText = DirectCast(dataGridItem.FindControl("txtQuantity"), TextBox).Text
Next
have also tried
'Dim strQuantity As String = CType(dgCart.Items(0).FindControl("txtQuantity"), TextBox).Text
и
'Dim txtQuantity As TextBox = e.Item.FindControl("txtQuantity")
Я также попытался баловаться с ViewState в txtbox, но это не имеет никакого значения.
Как исправить это?
Извините, я все еще новичок. Я не совсем понимаю, что вы говорите. Включить объекты в событие OnEditCommand? – user2192345
Также, как работает Gridview с моим DataGrid? – user2192345
Мои извинения. Я вижу, что вы используете DataGrid - они очень похожи в этом отношении. Я просто не работаю с этим достаточно, чтобы привести пример. – OneFineDay