从GridView获取值

本文关键字:获取 GridView | 更新日期: 2023-09-27 18:13:24

我试图从GridView中获取值并将其保存为会话变量。

我知道列名,在GridView中只有一个值。选择它并保存为Session变量的最佳方法是什么?

列名为CustomerID,值始终为int。

从GridView获取值

如果在GridView中有一列和一行,您可以尝试如下。

Session["MySessionValue"]=  GridView1.Rows[0].Cells[0].Text;

但是如果GridView中没有记录,当您通过索引访问时可能会抛出异常。所以最好先检查GridView1.Rows.Count并获取值

这不是一个正确的方法,你最好硬编码cellindex但无论如何,一个更长的版本的Damith的答案

if (GridView1.Rows.Count > 0)
{
    int indexofcolumn = 0;
    foreach (DataControlField column in GridView1.Columns)
    {
        if (column.HeaderText == "CustomerID") break;
        indexofcolumn++;
    }
    Session["CustomerID"] = GridView1.Rows[0].Cells[indexofcolumn].Text;
}

可以将GridView的DataKey设置为CustomerID,并通过:

进行选择。

int ID = Convert.ToInt32(GridView1.DataKeys[indx].Value);

indx是GridView中的Row Index .