如何在RowDataBound事件的Gridview中更改Eval()字段的值

Cic*_*ami 5 asp.net gridview rowdatabound

我有一个GridView:

<asp:GridView ID="gvDownloads">
   <Columns>
      <asp:TemplateField HeaderText="Status" >
         <ItemTemplate>
             <%# Eval("Enabled")%>
         </ItemTemplate>
      </asp:TemplateField>
   </Columns>
<asp:GridView/>
Run Code Online (Sandbox Code Playgroud)

Enabled属性是一个布尔值.现在我想根据Enabled属性的True/False显示Enabled/Disabled .因此我使用:

Sub gvDownloads_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles gvDownloads.RowDataBound

        If e.Row.RowType = DataControlRowType.DataRow Then

            If e.Row.Cells(3).Text = "True" Then
                e.Row.Cells(3).Text = "Enabled"
            Else
                e.Row.Cells(3).Text = "Disabled"
            End If

        End If

End Sub
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为启动事件时 e.Row.Cells(3).Text是一个空字符串.我怎么解决这个问题?谢谢

Bri*_*ins 4

If e.Row.Cells(3).Text <> Boolean.FalseString Then
       e.Row.Cells(3).Text = "Enabled"
Else
       e.Row.Cells(3).Text = "Disabled"
End If
Run Code Online (Sandbox Code Playgroud)