如何找出gridview中的选定行

时间:2013-03-11 06:54:29

标签: c# asp.net

我正在使用c#在.net上做一个项目。因为网站中有新用户的注册表格。管理员应批准注册。因为我正在使用GridView。如何在网格视图中找到所选行?

4 个答案:

答案 0 :(得分:0)

使用GridView.SelectedRow property

或者,您可以使用GridView.SelectedIndex property获取所选行的索引。

答案 1 :(得分:0)

你可能是指DATAGRIDVIEW吗?

如果是这样,找到所选行的某一列的内容

 datagridviewname.item(0, datagridviewname.currentrow.index).value

其中0 =数据网格的第一列

答案 2 :(得分:0)

使用以下gridview属性>

gvTradeFile.SelectedRows[0].Cells[10].Value.ToString();

希望这会对你有所帮助。

答案 3 :(得分:0)

通常我会使用RowCommand来处理这类事情:

<asp:GridView runat="server" id="gvUsers" AutoGenerateColumns="False">
    <Columns>
        <asp:BoundField DataField="username" HeaderText="Username" />
        <asp:BoundField DataField="dateregistered" HeaderText="Date" />
        <asp:TemplateField>
            <ItemTemplate>
                <asp:LinkButton runat="server" id="lnkApprove" CommandName="Approve" CommandArgument='<%# Eval("userid") %>' Text="Approve"></asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:LinkButton runat="server" id="lnkDeny" CommandName="Deny" CommandArgument='<%# Eval("userid") %>' Text="Deny"></asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

现在你需要在RowCommand上传递指令......

private void gvUsers_RowCommand(Object sender, GridViewCommandEventArgs e)
{
    switch (e.CommandName)
    {
        case "Approve":
            // Executes code to update the users table,
            // setting the approved flag to true
            // Usage: ApproveUser(integer userid);
            ApproveUser(e.CommandArgument);
            break;
        case else:
            // do whatever if the user registration wasn't approved
            break;
    }
}

如果您需要对此处的数据执行一些操作,那么此开关是个好主意。它评估所选行的行的主键值(在这种情况下,这是数据库中userid列的值)(当您单击链接时自动确定)以及CommandName告诉它什么处理这些信息。

希望这有帮助。