从选定行 gridview 中获取单元格值

Get Cell value from selected row gridview

我有一个包含 7 列的 GridView。其中 6 列有 LinkBut​​tons。

我想要做的是,获取第 1 列中的数据值,并在单击其中一个 LinkBut​​on 时将其放入页面其他位置的标签中。

例如,第一列的值如下所示:01:00 - 02:00.

这是我目前的情况:我的 GridView 名为 gvappts

我添加了这个属性:OnRowDataBound="gvappts_DataBound"

在我的一个 LinkBut​​ton 上的 gvappts 中,我添加了 CommandCommand Arguments:<asp:LinkButton id="lbd1" runat="server" Text='<%#(Eval("Day1"))%>' CommandName="GetData" CommandArgument='<%# Container.DataItemIndex %>'/>

因为我想Select当前行。

在我的 .cs 中我有这个:

protected void gvappts_RowCommand(object sender, System.Web.UI.WebControls.GridViewCommandEventArgs e)
    {
        if (e.CommandName == "GetData")
        {
            //Get rowindex
            int rowindex = Convert.ToInt32(e.CommandArgument);
            //Get Row
            GridViewRow gvr = gvappts.Rows[rowindex];
            //Set the label value
            lblTimeSelected.Text = gvr.Cells[0].Text;
        }
    }

单击按钮时没有出现任何错误,但没有返回任何值。我忽略了什么?

试试这个。

 GridViewRow gvr = gvappts.Rows[rowindex];
 Label myLabel  = gvr.FindControl("MyLabel Id") as Label ;
 lblTimeSelected.Text = myLabel.Text;