2013-03-20 99 views
0

我有一个文本框用于数据网格形式的购物车中的数量变更。当我点击编辑链接按钮时,它允许改变文本框。我试图得到的是改变后的文本,然后替换我的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") 

我也试图与txtbox的ViewState搞乱,但没什么区别。

我该如何解决这个问题?

回答

0

不确定是否需要editCommand或更新事件。从链接评论:

Dim tb As TextBox = CType(e.Item.Cells(3).Controls(0), TextBox) 
+0

对不起,我还是一个新手。我不太懂你在说什么。在OnEditCommand事件中投射对象? – user2192345 2013-03-20 19:41:03

+0

另外,Gridview如何与我的DataGrid一起工作? – user2192345 2013-03-20 19:48:08

+0

我的歉意 - 我看到你使用了一个DataGrid--他们在这方面非常相似。我只是没有足够的工作来举例。 – OneFineDay 2013-03-20 20:02:14

相关问题