그리드 뷰 컨트롤이 있습니다. 그러나 페이지 번호를 클릭하면 "페이지를 찾을 수 없습니다"오류가 발생합니다. 내가 여기서 무엇을 놓치고 있니?gridview 페이징이 작동하지 않습니다.
내 코드는 다음과 같습니다 당신은 PageIndexChanging
이벤트 처리기에서 BindGridview()
전화를해야
<asp:GridView ID="gvEmployeeResults" Width="900px" CellSpacing="1"
CellPadding="2"
AutoGenerateColumns="false" OnRowDataBound="gvEmployeeResults_OnRowDataBound"
runat="server" AllowPaging="true" >
<Columns>
<asp:TemplateField HeaderText="Last Name, First Name" ItemStyle-Wrap="true" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left">
<ItemTemplate>
<asp:LinkButton id="lbtnEmployeeName" OnCommand="EditEmployee_Command" CommandArgument='<%#Eval("EmployeeNum")%>' CommandName="EmployeeName" Visible="true" runat="server" ToolTip="Click to edit Employee."><%# DataBinder.Eval(Container.DataItem, "empLastName") + ", " + DataBinder.Eval(Container.DataItem, "empFirstName")%></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="empAddrLine1" ControlStyle-Width="225px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Address" />
<asp:BoundField DataField="empCity" ControlStyle-Width="120px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="City" />
<asp:BoundField DataField="empState" ControlStyle-Width="50px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="State" />
<asp:BoundField DataField="empPostalCode" ControlStyle-Width="100px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Zip" />
<asp:BoundField DataField="empDOB" ControlStyle-Width="100px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Date Of Birth" />
</Columns>
</asp:GridView>
protected void BindGridview()
{
corpEmployee.Employee emp = new corpEmployee.Employee();
emp.empLastName = tboxLastName.Text.Trim();
emp.empFirstName = tboxFirstName.Text.Trim();
emp.empDOB = tboxDateOfBirth.Text.Trim();
gvEmployeeResults.DataSource = corpEmployeeMgr.GetEmployees(emp);
gvEmployeeResults.DataBind();
}
protected void gvEmployeeResults_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[0].Text.Contains("nbsp;"))
{
e.Row.Cells[0].Text = e.Row.Cells[0].Text.Replace("<", "<").Replace(">", ">").Replace("&", "&");
}
}
else
{
return;
}
}
protected void gvEmployeeResults_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvEmployeeResults.PageIndex = e.NewPageIndex;
gvEmployeeResults.DataBind();
}
솔루션으로 문제가 해결되지 않습니다. – DotNetRookie
나는 당신의 문제를 해결하는 것을 확신한다, 당신이 원한다면 나는 나의 솔루션을 자세히 설명 할 수있다. –
이 예를 따른다. http://www.ezineasp.net/post/ASP-Net-2-0-Gridview-Paging-using-C -sharp.aspx –