Asp.net 如何使用asp vb.net根据条件更改gridview中绑定的单元格值?
我无法根据条件更改gridview中绑定的单元格值。数据首先从csv文件绑定到gridview。我想做的是,每当特定列上的特定单元格满足我提出的条件时,它就会更改该特定单元格的值 例如,如果单元格值等于“PHP”,则它将更改为“philippine”。 我在Gridview RowDataBound事件上尝试了以下代码,但没有发生任何事情:Asp.net 如何使用asp vb.net根据条件更改gridview中绑定的单元格值?,asp.net,vb.net,Asp.net,Vb.net,我无法根据条件更改gridview中绑定的单元格值。数据首先从csv文件绑定到gridview。我想做的是,每当特定列上的特定单元格满足我提出的条件时,它就会更改该特定单元格的值 例如,如果单元格值等于“PHP”,则它将更改为“philippine”。 我在Gridview RowDataBound事件上尝试了以下代码,但没有发生任何事情: Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.
Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
For i As Integer = 0 To GridView1.Rows.Count - 1
Dim myVal As String = GridView1.Rows(i).Cells(0).Text
If myVal = "PHP" Then
GridView1.Rows(i).Cells(0).Text = "Philippines"
End If
Next
End Sub
请帮帮我
提前感谢。如果它绑定到CSV,您有两个选项:
dim reader as string() = input.txt
for x as integer = 0 to reader.length -1
dim split as string() = reader(x).split(","c)
for y as integer from 0 to split.length - 1
datagridview.cells(y+1,x+1) = split(y)
next
next
这是未经测试的,但它应该与这些内容结合在一起(我不知道CSV的格式)。如果你有不均匀的行,如果你这样做可能会更好
for each str as String in Split
add to datagrid...
next
如果将事件用于GridView1,则将对每一行执行GridView1\u RowDataBound
,而不是仅执行一次。以下是您应该做的:
Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim myVal As String = e.Row.Cells(0).Text
If myVal = "PHP" Then
e.Row.Cells(0).Text = "Philippines"
End If
End If
End Sub
但是先生,这并不理想,因为csv文件来自url地址,我无法更改数据。然后,不绑定数据,只导入数据。通过绑定数据,您可以说这两个对象在100%的时间内是相同的(它们是绑定的)。因此,如果您只是导入数据,那么您可以更改其中一个而不需要影响另一个。先生,您能否发布一些代码,说明如何从url地址导入csv数据?如果对你合适的话