c# - 如何在 OnRowDataBound 的 gridview 中获取单元格的值?

标签 c# html asp.net gridview

我有一个包含多行的 GridView 。我想做的基本上是在每次更改行时(使用 OnRowDataBound)在 gridview 中获取字符串的特定值。

我已经尝试了很多选择,是的,我确实用谷歌搜索了它,但我找不到适合我需要的解决方案。如果您能帮我解决这个问题,我将不胜感激。

我当前的代码(不起作用,错误消息: 索引超出范围。必须为非负数且小于集合的大小。 参数名称:index):

protected void ViewJobs_DataBind(object sender, GridViewRowEventArgs e)
    {
        int index = Convert.ToInt32(e.Row.RowIndex);
        string replymessage = ViewJobs.Rows[index].Cells[1].Text;

        if (!String.IsNullOrEmpty(replymessage))
            IfReply = true;
    }
}

HTML:

    <% if (IfReply == true) { %>
        <span style=" font-weight: bold; font-size: 20px;"> Reply To: <%# Eval("Reply") %>  | By: <%# Eval("Sender") %> </span>
        <% IfReply = false;
    } %>     

如果 replymessage 在 gridview 的当前行中不为空,则基本上显示上面的跨度。

最佳答案

如果 Changing row 的意思是“在选择任何行时”,您可以在每次单击一行时使用选定的索引更改事件。

aspx 页面:-

<asp:gridview id="ViewJobs"  runat="server"      
onselectedindexchanged="ViewJobs_SelectedIndexChanged">

代码隐藏:-

void ViewJobs_SelectedIndexChanged(Object sender, EventArgs e)
{
   GridViewRow row = ViewJobs.SelectedRow;
   string replymessage = row.Cells[1].Text;
    if (!String.IsNullOrEmpty(replymessage))
        IfReply = true;
}

关于c# - 如何在 OnRowDataBound 的 gridview 中获取单元格的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27511091/

相关文章:

c# - 按钮 Onclick 事件(在 codbehind 中)不会在 MVC 2 中触发

c# - 将 Dictionary<string,List<Class>> 绑定(bind)到 TreeView

html - 将 div 放在图像上但响应

ASP.net 设计问题,如果在 HTTPS 上则强制重定向到 HTTP

asp.net - C# 中的缓存对我来说是正确的方法吗?

c# - LINQ:如何使用 LINQ 展平深层嵌套对象

c# - 空对象引用异常

php - 比较多个数组值并更新表状态

javascript - CSS 以最大宽度 float ?

c# - 加入通过下载拆分的二进制文件