gridview中的数据替换

时间:2009-12-07 14:11:17

标签: c# asp.net sql-server gridview

我在ASP.Net工作,我将数据库中的状态字段保存为true或false。现在,我想在GridView的前端显示true或false作为Active或Inactive。如何在Gridview中显示数据。

提前致谢。

4 个答案:

答案 0 :(得分:3)

另一种方法是使用datagrid的RowDataBound事件将其转换为活动/非活动字符串:

  Protected Sub gvRequests_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvRequests.RowDataBound
        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim lbl As Label = CType(e.Row.FindControl("lblStatus"), Label)
            If lbl.Text="1" then
                   lbl.Text="Active"
            else
                   lbl.Text="Inactive"
            end if
        end if
  end sub

答案 1 :(得分:1)

如果您询问如何将truefalse更改为ActiveInactive,则可以在SQL查询中使用CASE语句,像这样:

SELECT CASE Status WHEN 1 THEN 'Active' WHEN 0 THEN 'Inactive' END FROM Something

如需更具体的答案,请发布更多详情。

答案 2 :(得分:0)

使用复选框列显示状态字段。 (将该列设置为禁用)

答案 3 :(得分:0)

如果您知道要过滤数据的单元格位置,也可以在gridviews RowDataBound事件中执行此操作。

protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            if (e.Row.Cells[2].Text == "1")
                e.Row.Cells[2].Text = "True";
            else
                e.Row.Cells[2].Text = "False";
        }
    }

这是我以前在gridview中查找和替换文本的内容。