📄 datagridpage2.aspx
字号:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<html>
<script language="C#" runat="server">
//声明表格对象
DataTable Cart;
//声明视图对象
DataView CartView;
protected void Page_Load(Object sender, EventArgs e)
{
if (Session["DG6_ShoppingCart"] == null) {
Cart = new DataTable();
//建立数据连接
SqlConnection myConnection = new SqlConnection("server=(local);database=Northwind;Trusted_Connection=yes");
//创建SqlDataAdapter对象
SqlDataAdapter myCommand = new SqlDataAdapter("select * from Categories",myConnection);
//创建DataSet对象
DataSet ds = new DataSet();
//将查询结果填充到DataSet对象中
myCommand.Fill(ds, "Categories");
Cart=ds.Tables["Categories"];
Session["DG6_ShoppingCart"] = Cart;
}
else {
Cart = (DataTable)Session["DG6_ShoppingCart"];
}
CartView = new DataView(Cart);
CartView.Sort = "CategoryID";
if (!IsPostBack) {
BindGrid();
}
}
public void BindGrid() {
MyDataGrid.DataSource = CartView;
MyDataGrid.DataBind();
}
void MyDataGrid_Page(Object sender, DataGridPageChangedEventArgs e) {
MyDataGrid.CurrentPageIndex = e.NewPageIndex;
BindGrid();
}
void PagerButtonClick(Object sender, EventArgs e) {
//使用自定义的分页链接
String arg = ((LinkButton)sender).CommandArgument;
switch(arg)
{
case ("next")://当点击了下一页时
if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))
MyDataGrid.CurrentPageIndex ++;
break;
case ("prev")://当点击了上一页时
if (MyDataGrid.CurrentPageIndex > 0)
MyDataGrid.CurrentPageIndex --;
break;
case ("last")://当点击了最后一页时
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);
break;
case ("custom")://当跳转到特定页时
int page=Convert.ToInt32(tbPage.Text);
if((page<(MyDataGrid.PageCount+1))&&(page>0))
MyDataGrid.CurrentPageIndex =page-1;
break;
default:
//跳转到一定页
MyDataGrid.CurrentPageIndex = Convert.ToInt32(arg);
break;
}
BindGrid();
}
</script>
<body>
<h3>清单</h3>
<form runat=server>
<ASP:DataGrid id="MyDataGrid" runat="server"
BorderColor="black"
HeaderStyle-BackColor="#aaaadd"
AutoGenerateColumns="false"
AllowPaging="True"
PageSize="3"
PagerStyle-HorizontalAlign="Right"
PagerStyle-Mode="NumericPages"
OnPageIndexChanged="MyDataGrid_Page">
<Columns>
<asp:BoundColumn HeaderText="序号" ReadOnly="true" DataField="CategoryID"/>
<asp:BoundColumn HeaderText="名称" DataField="CategoryName" />
<asp:BoundColumn HeaderText="描述" DataField="Description"/>
</Columns>
</asp:DataGrid>
<p>
<asp:LinkButton id="btnPrev" runat="server"
Text="前一页"
CommandArgument="prev"
OnClick="PagerButtonClick"/>
<asp:LinkButton id="btnNext" runat="server"
Text="后一页"
CommandArgument="next"
OnClick="PagerButtonClick"/>
<asp:LinkButton id="btnFirst" runat="server"
Text="第一页"
CommandArgument="0"
OnClick="PagerButtonClick"/>
<asp:LinkButton id="btnLast" runat="server"
Text="最后一页"
CommandArgument="last"
OnClick="PagerButtonClick"/>
<asp:LinkButton id="btnLink" Runat="server"
Text="跳转到第"
CommandArgument="custom"
OnClick="PagerButtonClick"/>
<asp:TextBox id="tbPage" Text="1" Width="40px" runat="server"/>
页
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -