网格视图中带分页的搜索框

本文关键字:搜索 分页 视图 网格 | 更新日期: 2023-09-27 18:17:24

我想做一个搜索框与这些"组件":textBox,按钮和gridview 与分页。在我的gridview中有姓名,姓氏和个人代码。这个想法,用户写的东西在文本框和按下按钮,然后在第一页搜索人物代码,如果它被发现,然后我改变背景行,否则,继续与第二页,如果它被发现是显示这个页面和改变背景。我有一些东西,但我的问题是总是比较白色的个人代码的第一页。我的代码:

    protected void Button_Click(object sender, EventArgs e)
    {
        string search= txtSearch.Text;
        for (int pageNumber= 0; pageNumber< MyGridView.PageCount; pageNumber++)
        {
            foreach (GridViewRow gr in MyGridView.Rows)
            {
                //Cells[2] is 'personal code'
                bool found = gr.Cells[2].Text.Contains(search);
                if (found)
                {
                    //MyGridView.PageIndex = pageNumber;
                    //MyGridView.DataBind();
                    MyGridView.Rows[gr.RowIndex].Style.Add("BACKGROUND-COLOR", "#aaccee");
                    break;
                }
            }
        }
    }

有这样的东西吗?

 gr.Page[X].Cells[Y].Text 

谢谢

网格视图中带分页的搜索框

试试这个:

private bool _isStop = false;
protected void Button_Click(object sender, EventArgs e)
{
    string search= txtSearch.Text;
    for (int i= 0; i< MyGridView.PageCount; i++)
    {
        MyGridView.PageIndex = i;
        //MyGridView populate page here (MyGridView_View(sender, e))
        for (int j=0; j< MyGridView.Rows.Count; j++)
        {
            GridViewRow row = MyGridView.Rows[j];
            if (row.Cells[2].Text.Contains(search)) // cell[2] is personal code as you said.
            {
                _isStop = true;
                row.ForeColor = ColorTranslator.FromHtml("red");
                break;
            }
        }
        if (flag)
            break;
    }
    if (!flag)
        MyGridView.PageIndex = 0;
        //MyGridView_View(sender, e)
}

我没有试过这个方法,但这会给你一些启发。