0

我有一个显示一些数据的 Gridview。我试图做的是如果命令名称是编辑等以采取适当的行动。

我设法通过在 datagridview 的 RowCommand 事件下执行 If 语句来获取命令名称,这使我可以对每个命令采取适当的操作。

我遇到的问题是我试图根据选择的命令从某个列中获取 SELECTED Rows 值。因此,如果用户单击第 15 行上的编辑,那么我想获得第 15 行的第 5 列值。如果用户单击第 10 行,那么它将是第 10 行、第 5 列等。

我怎么能在 RowCommand 事件或任何其他方式来实现上述目标下做到这一点?

谢谢

4

1 回答 1

0

我刚刚读了这个问题,但如果你还没有弄清楚,那么你可以做什么去你的 aspx 文件并在 gridview 下定义“OnRowEditing”。然后回到文件后面的代码并执行以下操作:

 protected void gvEvents_Edit(object sender, GridViewEditEventArgs e)
    {

        //Set the edit index.
        gvEvents.EditIndex = e.NewEditIndex;
        DataTable dt = Session["dtEvents"] as DataTable;
        //Bind data to the GridView control.

        gvEvents.DataSource = Session["dtEvents"];
        gvEvents.DataBind();
    }

您还需要定义 OnRowUpdating 和 OnRowCancelingEdit 并将它们的代码放在后面的代码中。这是 OnRowCancelingEdit 下的内容

    protected void gvEvents_cancEdit(object sender, GridViewCancelEditEventArgs e)
    {
        //Reset the edit index.
        gvEvents.EditIndex = -1;
        //Bind data to the GridView control.
        DataTable dt = Session["dtEvents"] as DataTable;

        gvEvents.DataSource = Session["dtEvents"];
        gvEvents.DataBind();

    }
于 2012-10-17T12:57:05.280 回答