如何知道asp.net中处理的上一个事件

时间:2012-09-14 11:40:23

标签: asp.net

在页面加载时我已经将数据库中的数据显示在gridview上(带有编辑和删除选项)。我在页面上也有一个搜索按钮。当我点击搜索时,搜索到的数据应该在gridview中可见,这工作正常。但是当我在搜索后单击删除链接时,它不会占用搜索到的行。单击删除后页面回发。我需要检查在gridview上执行事件之前执行的事件。怎么做??我希望问题很清楚..任何帮助都表示赞赏。感谢。

1 个答案:

答案 0 :(得分:0)

Page_Load发生在RowCommand之前,你是否只绑定了网格if(!IsPostBack)?

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
    {
        BindGrid();
    }
}

protected void SearchButton_Click(object sender, EventArgs e)
{
    BindGrid(searchText.Text);
}

protected void GridView_RowCommand(object sender, GridViewRowEventArgs e)
{
    switch(e.CommandName)
    {
        case "Delete":
            DeleteRow(e.Row.CommandArgument);
            break;
    }
}

private void BindGrid()
{
    //GridView binding business logic.
}

private void BindGrid(String searchTerm)
{
    //GridView binding logic with searchTerm.
}

private void DeleteRow(String commandArg)
{
    //Convert command arg to ID or whatever and delete data.
}