<div style="margin:auto">
current page: <asp:Label ID="lbCurrent" runat="server"></asp:Label>
<br />
Total pages: <asp:Label ID="lbTotal" runat="server"></asp:Label>
<asp:DataList ID="dlProduct" runat="server" OnItemCommand="dlProduct_ItemCommand">
<ItemTemplate>
<%#Eval("Pname") %>
<br />
<%#Eval("Pcolor") %>
<br />
<%#Eval("Pnewprice") %>
<br />
<%#Eval("Pcontent") %>
<br />
<asp:Button ID="btnDelectProduct" runat="server" Text="Delete"
CommandName="delete" CommandArgument='<%#Eval("Pid") %>' />
<br />
<br />
</ItemTemplate>
<SelectedItemTemplate>
<%#Eval("Pname") %>
<br />
<%#Eval("Pcolor") %>
<br />
<%#Eval("Pnewprice") %>
<br />
<%#Eval("Pcontent") %>
<br />
<asp:Button ID="btnDelectProduct" runat="server" Text="Delete"
CommandName="delete" CommandArgument='<%#Eval("Pid") %>' />
<br />
<img alt="." height="100" src="Image/M.jpg"/>
</SelectedItemTemplate>
</asp:DataList>
<br />
<asp:LinkButton ID="lbPrevious" runat="server"
OnCommand="IndexChange"
CommandArgument="previous"><</asp:LinkButton>
<asp:LinkButton ID="lbNext" runat="server"
OnCommand="IndexChange"
CommandArgument="next">></asp:LinkButton>
</div>
public partial class dlPage : System.Web.UI.Page
{
DataSet ds;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["pageindex"] = "0";
BindData();
}
}
protected void PrepareData()
{
SqlConnection conn = ProjectDal.GetConnection();
conn.Open();
string sql = "select * from Tb_product";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
ds = new DataSet();
da.Fill(ds);
conn.Close();
}
protected void BindData()
{
PrepareData();
DataTable dt = ds.Tables[0];
if (dt != null && dt.Rows.Count > 0)
{
DataView dv = dt.DefaultView;
PagedDataSource pds = new PagedDataSource();
pds.DataSource = dv;
pds.AllowPaging = true;
pds.PageSize = 3;
pds.CurrentPageIndex = int.Parse(ViewState["pageindex"].ToString());
if (!pds.IsFirstPage)
{
lbPrevious.Visible = true;
}
else
{
lbPrevious.Visible = false;
}
if (!pds.IsLastPage)
{
lbNext.Visible = true;
}
else
{
lbNext.Visible = false;
}
dlProduct.DataSource = pds;
dlProduct.DataBind();
lbCurrent.Text = (pds.CurrentPageIndex + 1).ToString();
lbTotal.Text = pds.PageCount.ToString();
}
}
protected void IndexChange(object sender, CommandEventArgs e)
{
string cmd = ((LinkButton)sender).CommandArgument.ToString();
int pageindex = int.Parse(ViewState["pageindex"].ToString());
if (cmd == "previous")
{
pageindex += -1;
}
else if (cmd == "next")
{
pageindex += 1;
}
ViewState["pageindex"] = pageindex;
BindData();
}
protected void dlProduct_ItemCommand(object sender, DataListCommandEventArgs e)
{
//Int64 pid = Convert.ToInt64(e);
//string sqlDeleteProduct = "delete from Tb_product where Pid=" + pid;
string cmd = e.CommandName;
Int64 pid = Convert.ToInt64(e.CommandArgument);
if (cmd == "delete")
{
this.ClientScript.RegisterStartupScript(GetType(),"","<script>alert('"+pid.ToString()+"')</script>");
}
}
}
}
分享到:
相关推荐
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindList(); } } public void Command_select(object sender, DataListCommandEventArgs e) { string command = ((LinkButton)e....
在.NET框架中,DataList控件是一个常用的Web控件,用于显示数据集合,例如数据库查询结果。本资源主要探讨如何实现DataList控件的排序和分页功能,这对于提升用户体验和优化网页性能至关重要。下面我们将深入讲解这...
在.NET框架中,DataList控件是一个非常实用的Web服务器控件,用于显示和操作数据集合,例如数据库查询结果。本篇文章将深入探讨DataList的基本用法,包括编辑、删除、添加、更新和取消操作,以及如何利用...
这通常在代码-behind文件中完成,如 `Page_Load` 事件处理程序中,使用 `DataList1.DataSource = myDataSource;` 设置数据源,然后调用 `DataList1.DataBind();` 进行绑定。 2. **定义模板**:`DataList` 使用模板...
在DataList里编辑和删除数据 在 ASP.NET 中,DataList 控件是一个强大的控件,用于显示和编辑数据。在本篇文章中,我们将探讨如何在 DataList 中编辑和删除数据。 标题:在 DataList 里编辑和删除数据 描述:在 ...
2. 分页参数:在请求数据时,需要传递分页参数,包括当前页码(Page Number)和每页显示的数据量(Page Size)。这些参数可以根据用户的操作动态调整。 3. 计算总页数:根据数据总量和每页显示的数量,计算出总的...
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DataList1.DataSource = GetData(); DataList1.DataBind(); } } ``` 或者在控件属性中直接指定数据源: ```xml <asp:DataList ...
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // 连接数据库,执行查询并填充数据 var dataSet = GetDataFromDB(); datalist1.DataSource = dataSet.Tables[0]; datalist1....
ASP.NET中的DataList控件是Web Forms中一种强大的数据展示工具,它允许开发者灵活地呈现数据集合,并且支持多种布局和交互方式。本教程将深入探讨如何在ASP.NET中使用DataList进行数据库绑定以及实现分页功能。 ...
### DataList 分页知识点 #### 一、DataList控件简介 DataList 是 ASP.NET 提供的一个用于数据绑定的服务器控件,它允许开发者自定义布局格式,支持重复项模板和交替项模板,并且可以方便地对数据进行排序、分页等...
在页面加载时,可以使用Request.QueryString["Page"]参数来获取当前页的索引,并将其设置到PagedDataSource对象的CurrentPageIndex属性中。同时,可以使用PagedDataSource对象的IsFirstPage和IsLastPage属性来判断...
在ASP.NET Web Forms开发中,`DataList`控件常用于显示数据集合,而`DropDownList`则常常作为用户交互的下拉选择项。当用户在`DropDownList`中选择不同的选项时,我们通常需要捕获`SelectedIndexChanged`事件来执行...
在`Page_Load`事件处理程序中,使用`DataList.DataSource = yourDataSource;`将数据源绑定到DataList,并调用`DataList.DataBind();`来绘制控件。 3. **启用分页**:为了启用分页,需要设置DataList的`AllowPaging`...
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // 假设 SaleList 是包含商品信息的数据源 List<Product> productList = GetProducts(); SaleList.DataSource = productList; ...
在这个案例中,"c# DATALIST显示数据库信息.rar"显然涉及使用C#编程语言和DataList控件来从数据库检索并展示数据。DataList是ASP.NET Web Forms中的一种服务器端控件,它允许开发者以灵活的方式呈现数据,比如表格或...
例如,可以添加PageSize、TotalItems、CurrentPage等属性,以及BindData和ChangePage等方法。 2. 数据绑定:在自定义用户控件中,使用DataList控件,并在代码-behind中实现BindData方法。这个方法通常会根据...
4. 绑定数据:在Page_Load事件中,调用DataList的DataSource属性设置数据源,并调用DataBind()方法进行绑定。 5. 处理事件:根据需要,添加事件处理程序以响应用户操作。 高级用法: 1. 分页:虽然DataList自身不...
在`Page_Load`事件中,首先检查是否为回发请求,如果不是,则执行初始化操作:计算记录总数、设置AspNetPager的`RecordCount`属性,并调用`bindDL`方法绑定数据。`bindDL`方法中,根据当前的页面大小和AspNetPager的...
同时,要关注数据绑定的时机,通常在Page_Load事件中处理,但为了防止重复绑定,我们需要检查IsPostBack属性。 总结来说,DataList和DataGridVIew是ASP.NET开发中不可或缺的数据展示工具。DataList更适合需要定制化...
在ASP.NET中,可以将值附加到URL的查询字符串部分,如`http://example.com/page.aspx?id=123`,然后在服务器端的代码中通过Request.QueryString["id"]获取这个值。这种方法简单直观,但需要注意的是,由于URL可见,...