Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 将数据从数据库修改到gridview_Sql_Vb.net_Gridview - Fatal编程技术网

Sql 将数据从数据库修改到gridview

Sql 将数据从数据库修改到gridview,sql,vb.net,gridview,Sql,Vb.net,Gridview,我有一个数据库,其中有一列名为codes。当这列代码显示在gridview中时,我想修改该列的内容。例如: 在数据库中,如果codes列包含A、B和C值,那么在gridview中,它应该显示Abelothin而不是A,Bollux而不是B,Choubaca而不是C 多谢各位 更新: 我添加了以下代码,我遗漏了什么 Protected Sub GrvPassengerReport_RowDataBound(sender As Object, e As GridViewRowEventArgs) H

我有一个数据库,其中有一列名为codes。当这列代码显示在gridview中时,我想修改该列的内容。例如:

在数据库中,如果codes列包含A、B和C值,那么在gridview中,它应该显示Abelothin而不是A,Bollux而不是B,Choubaca而不是C

多谢各位

更新:

我添加了以下代码,我遗漏了什么

Protected Sub GrvPassengerReport_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GrvPassengerReport.RowDataBound
        If e.Row.RowType = DataControlRowType.DataRow Then

             If e.Row.Cells(8).Text = "C" Then
            e.Row.Cells(8).Text = "Chewbacca"
        End If
        End If
    End Sub

如果您输入gridview的“编辑列”选项,并假设sql连接正确,那么您应该有两个不同的属性来执行此操作

首先,主选项卡将位于Data选项卡及其名为DataPropertyName的下。这是您希望此表显示的数据的名称,例如年龄、身高或头发颜色

在“设计”选项卡下还有一个名为“名称”的字段,这只是网格中的显示名称


因此,您可以有一个名为PersonName的数据库属性名称,并将gridviews DataPropertyName设置为该名称,然后在名称字段中,您可以只写入名称,它将按原样显示。

实现这一点的一种方法是对gridview控件使用itemdatabound事件,然后根据数据库表中的实际值决定您希望在gridview中显示哪些值。

我能够通过使用GridView.RowDataBound事件。对我有帮助的文章很少

一,

二,

这是密码

Protected Sub GrvPassengerReport_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GrvPassengerReport.RowDataBound
        If e.Row.RowType = DataControlRowType.DataRow Then

            Dim labelone As System.Web.UI.WebControls.Label
            labelone = e.Row.FindControl("lblcStopType")

            If labelone.Text = "C" Then
                labelone.Text = "Chewbaca"
            End If

        End If
    End Sub

因为很多人都弄错了,我能确认这是一个带有GridView控件的Web窗体应用程序,而不是一个带有DataGridView的Windows窗体应用程序吗?是的,这是一个带有GridView控件的Web表单应用程序。我建议翻译同一个表或另一个表中的代码说明,然后加入该表以获取您的说明…感谢@MrCoDeXeR的建议,我限制了对DB的访问,无法创建或更改表。我明白了,然后你可以创建一个翻译方法来完成这项工作……该列包含多个选项,因此我想是否可以添加if语句。例如:如果选项A然后显示Abeloth End If…是的,您可以这样做,或者如果选项较少但表的列中有许多不同的条目,则可以使用开关案例。然后,我建议您使用另一个表,通过主键和外键约束来维护这些代码的相应值。在整个过程中,我可以在哪里添加if语句?它类似于受保护的void GridView1_RowDataBoundobject sender,GridViewRowEventArgs e{if e.Row.Cells[x].Text==A{e.Row.Cells[x].Text=Abeloth;}}//此处x是将绑定列文本的单元格编号。请记住,单元格编号从0开始。我是此文本编辑器的新手。。很抱歉我的回答有误:希望你找到我想要分享的东西。