我有一个Web部件,在它创建createchildcontrols
的{{1}}函数中,调用存储过程并填充网格视图。 gridview
的一列是一个命令字段,其中包含项目&的键值。传递到页面上的另一个Web部件以显示详细信息。一切正常,直到他们要我将搜索功能添加到列表Web部件。
起初这似乎有效,列sems中的数据反映了正确的搜索结果,但命令字段在首次加载页面时没有搜索条件时保留原始值。
此外,在进行搜索时,它似乎通过createchildcontrols函数,使用所有项填充gridview,然后运行gridView
中的代码,其中使用特定搜索条件运行更多sql并且gridview
重新绑定搜索结果(但命令字段中的原始键值)。
关于我如何搞砸了这个想法?
来自btnSearch_Click
的代码:
CreateChildControls
来自_view = new GridView();
this.Controls.Add(this._view);
_view.Caption = "Rate Quote Email";
_view.AutoGenerateColumns = true;
_view.DataKeyNames = new string[] { "XREF_ID" };
CommandField field = new CommandField();
_view.SelectedRowStyle.BackColor = Color.Red;
field.ShowSelectButton = true;
field.ButtonType = ButtonType.Link;
_view.Columns.Add(field);
_view.AllowPaging = true;
_view.PageSize = 20;
_view.AlternatingRowStyle.BackColor = Color.Cornsilk;
_view.PageIndexChanging += new GridViewPageEventHandler(_view_PageIndexChanging);
的代码:
btnSearch_Click