Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在datalist中添加分页_C#_Asp.net_Datalist - Fatal编程技术网

C# 如何在datalist中添加分页

C# 如何在datalist中添加分页,c#,asp.net,datalist,C#,Asp.net,Datalist,嗨,我已经为数据列表实现了分页,但是它没有显示正确的分页 你可以在这张图片中看到输出,它没有正确显示输出,我需要的输出是1到10个编号,然后是一个[…]像这样,所以尽快回答我的问题的解决方案是什么 <asp:DataList ID="dtlpaging" runat="server" RepeatDirection="Horizontal" OnItemDataBound="dtlpaging_ItemDataBou

嗨,我已经为数据列表实现了分页,但是它没有显示正确的分页

你可以在这张图片中看到输出,它没有正确显示输出,我需要的输出是1到10个编号,然后是一个[…]像这样,所以尽快回答我的问题的解决方案是什么

                                    <asp:DataList ID="dtlpaging" runat="server" RepeatDirection="Horizontal" OnItemDataBound="dtlpaging_ItemDataBound" >
                                        <ItemTemplate>

                                                        <asp:LinkButton ID="lnkbtnPaging" runat="server" OnClick="lnkbtnPaging_Click" Text='<%# Eval("pagetext") %>'
                                                            ValidationGroup='<%# Eval("pageindex") %>' CommandArgument='<%# Eval("pageindex") %>'
                                                            CommandName="Paging" CssClass="btn btn-info" style="padding:1px 7px;"></asp:LinkButton>

                                        </ItemTemplate>
                                    </asp:DataList>

/////////////////////c#编码///////////////

if (ViewState["Filterrecords"] == "")
    {
        DataTable dset = new DataTable();
        dset = dataget();
        if (dset.Rows.Count > 0)
        {
            dlouter.Visible = true;
            lblrecord.Visible = false;
            adsource = new PagedDataSource();
            adsource.DataSource = dset.DefaultView;
        }
        else
        {
            dlouter.Visible = false;
            lblrecord.Visible = true;
            adsource = new PagedDataSource();
            adsource.DataSource = dset.DefaultView;

        }
    }
    else
    {
        DataTable dt = new DataTable();
        dt = (DataTable)ViewState["Filterrecords"];
        if (dt.Rows.Count > 0)
        {
            dlouter.Visible = true;
            lblrecord.Visible = false;
            adsource = new PagedDataSource();
            adsource.DataSource = dt.DefaultView;
        }
        else
        {
            dlouter.Visible = false;
            lblrecord.Visible = true;
            adsource = new PagedDataSource();
            adsource.DataSource = dt.DefaultView;
        }
    }
    adsource.PageSize = 10;
    adsource.AllowPaging = true;
    adsource.CurrentPageIndex = pos;
    imgbtnfirst.Enabled = !adsource.IsFirstPage;
    imgbtnprevious.Enabled = !adsource.IsFirstPage;
    imgbtnlast.Enabled = !adsource.IsLastPage;
    imgbtnnext.Enabled = !adsource.IsLastPage;
    dopaging();
    dlouter.DataSource = adsource;
    dlouter.DataBind();

 protected void dtlpaging_ItemDataBound(object sender, DataListItemEventArgs e)
{
    LinkButton lnkbtnPage = (LinkButton)e.Item.FindControl("lnkbtnPaging");

    pos = (int)this.ViewState["vs"];
    string a = Convert.ToString(pos);

    if (lnkbtnPage.CommandArgument.ToString() == a.ToString())
    {
        lnkbtnPage.Enabled = false;
        lnkbtnPage.Style.Add("font-family", "Arial");
        lnkbtnPage.Style.Add("font-size", "11px");
        lnkbtnPage.Style.Add("color", "#000000");
        lnkbtnPage.Font.Bold = true;

    }
}
public void dopaging()
{
    DataTable dt = new DataTable();
    dt.Columns.Add("pageindex");
    dt.Columns.Add("pagetext");
    for (int i = 0; i < adsource.PageCount; i++)
    {
        DataRow dr = dt.NewRow();
        dr[0] = i;
        dr[1] = i + 1;
        dt.Rows.Add(dr);
    }
    dtlpaging.DataSource = dt;
    dtlpaging.DataBind();
    dtlpaging1.DataSource = dt;
    dtlpaging1.DataBind();
}
 protected void lnkbtnPaging_Click(object sender, EventArgs e)
{
    int id = Convert.ToInt32(((LinkButton)sender).ValidationGroup.ToString());
    pos = id;
    this.ViewState["vs"] = pos;
    databind();
}
if(ViewState[“Filterrecords”]=“”)
{
DataTable dset=新的DataTable();
dset=dataget();
如果(dset.Rows.Count>0)
{
dlouter.Visible=true;
lblrecord.Visible=假;
adsource=new PagedDataSource();
adsource.DataSource=dset.DefaultView;
}
其他的
{
dlouter.Visible=false;
lblrecord.Visible=true;
adsource=new PagedDataSource();
adsource.DataSource=dset.DefaultView;
}
}
其他的
{
DataTable dt=新的DataTable();
dt=(数据表)视图状态[“Filterrecords”];
如果(dt.Rows.Count>0)
{
dlouter.Visible=true;
lblrecord.Visible=假;
adsource=new PagedDataSource();
adsource.DataSource=dt.DefaultView;
}
其他的
{
dlouter.Visible=false;
lblrecord.Visible=true;
adsource=new PagedDataSource();
adsource.DataSource=dt.DefaultView;
}
}
adsource.PageSize=10;
adsource.allowpage=true;
adsource.CurrentPageIndex=pos;
imgbtnfirst.Enabled=!adsource.IsFirstPage;
imgbtnprevious.Enabled=!adsource.IsFirstPage;
imgbtnlast.Enabled=!adsource.IsLastPage;
imgbtnnext.Enabled=!adsource.IsLastPage;
掺杂();
dlouter.DataSource=adsource;
dlouter.DataBind();
受保护的void dtlpaging_ItemDataBound(对象发送方,DataListItemEventArgs e)
{
LinkButton lnkbtnPage=(LinkButton)e.Item.FindControl(“lnkbtnPaging”);
pos=(int)this.ViewState[“vs”];
字符串a=转换为字符串(pos);
if(lnkbtnPage.CommandArgument.ToString()==a.ToString())
{
lnkbtnPage.Enabled=false;
添加(“字体系列”、“Arial”);
lnkbtnPage.Style.Add(“字体大小”,“11px”);
lnkbtnPage.Style.Add(“color”,“#000000”);
lnkbtnPage.Font.Bold=true;
}
}
公开作废
{
DataTable dt=新的DataTable();
dt.列。添加(“页面索引”);
dt.列。添加(“页面文本”);
对于(int i=0;i
\u PageDataSource.DataSource=dset.DefaultView;
_PageDataSource.AllowPaging=true;
_PageDataSource.PageSize=10;
_PageDataSource.CurrentPageIndex=CurrentPage;
ViewState[“totalpages”]=\u PageDataSource.PageCount;
如果(_PageDataSource.PageCount>1)
{
//paPageing.Visible=true;
this.imgbtnprevious.Enabled=!\u PageDataSource.IsFirstPage;
this.imgbtnnext.Enabled=!\u PageDataSource.IsLastPage;
this.imgbtnfirst.Enabled=!\u PageDataSource.IsFirstPage;
this.imgbtnlast.Enabled=!\u PageDataSource.IsLastPage;
}
其他的
{
//paPageing.Visible=false;
}
this.dlouter.DataSource=\u页面数据源;
this.dlouter.DataBind();
这是doPaging();
私人文件
{
DataTable dt=新的DataTable();
dt.列。添加(“页面索引”);
dt.列。添加(“页面文本”);
fistIndex=当前第5页;
如果(当前页面>5)
{
lastIndex=CurrentPage+5;
}
其他的
{
lastIndex=10;
}
如果(lastIndex>Convert.ToInt32(ViewState[“totalpages”]))
{
lastIndex=Convert.ToInt32(ViewState[“totalpages”]);
fistIndex=最新指数-10;
}
if(fistIndex<0)
{
fistIndex=0;
}
对于(int i=fistIndex;i_PageDataSource.DataSource = dset.DefaultView;
_PageDataSource.AllowPaging = true;
_PageDataSource.PageSize = 10;
_PageDataSource.CurrentPageIndex = CurrentPage;
ViewState["totalpages"] = _PageDataSource.PageCount;
if (_PageDataSource.PageCount > 1)
{
    //paPageing.Visible = true;
    this.imgbtnprevious.Enabled = !_PageDataSource.IsFirstPage;
    this.imgbtnnext.Enabled = !_PageDataSource.IsLastPage;
    this.imgbtnfirst.Enabled = !_PageDataSource.IsFirstPage;
    this.imgbtnlast.Enabled = !_PageDataSource.IsLastPage;
}
else
{
    //paPageing.Visible = false;
}
this.dlouter.DataSource = _PageDataSource;
this.dlouter.DataBind();
this.doPaging();

 private void doPaging()
{
DataTable dt = new DataTable();
dt.Columns.Add("PageIndex");
dt.Columns.Add("PageText");

fistIndex = CurrentPage - 5;


if (CurrentPage > 5)
{
    lastIndex = CurrentPage + 5;
}
else
{
    lastIndex = 10;
}
if (lastIndex > Convert.ToInt32(ViewState["totalpages"]))
{
    lastIndex = Convert.ToInt32(ViewState["totalpages"]);
    fistIndex = lastIndex - 10;
}

if (fistIndex < 0)
{
    fistIndex = 0;
}

for (int i = fistIndex; i < lastIndex; i++)
{
    DataRow dr = dt.NewRow();
    dr[0] = i;
    dr[1] = i + 1;
    dt.Rows.Add(dr);
}

this.dtlpaging.DataSource = dt;
this.dtlpaging.DataBind();
this.dtlpaging1.DataSource = dt;
this.dtlpaging1.DataBind();
 }
 #region Private Properties
 private int CurrentPage
{
get
{
    object objPage = ViewState["_CurrentPage"];
    int _CurrentPage = 0;
    if (objPage == null)
    {
        _CurrentPage = 0;
    }
    else
    {
        _CurrentPage = (int)objPage;
    }
    return _CurrentPage;
}
set { ViewState["_CurrentPage"] = value; }
}
private int fistIndex
{
   get
   {

    int _FirstIndex = 0;
    if (ViewState["_FirstIndex"] == null)
    {
        _FirstIndex = 0;
    }
    else
    {
        _FirstIndex = Convert.ToInt32(ViewState["_FirstIndex"]);
    }
    return _FirstIndex;
}
set { ViewState["_FirstIndex"] = value; }
}
 private int lastIndex
  {
    get
{

    int _LastIndex = 0;
    if (ViewState["_LastIndex"] == null)
    {
        _LastIndex = 0;
    }
    else
    {
        _LastIndex = Convert.ToInt32(ViewState["_LastIndex"]);
    }
    return _LastIndex;
}
set { ViewState["_LastIndex"] = value; }
}
#endregion
#region PagedDataSource
PagedDataSource _PageDataSource = new PagedDataSource();
#endregion
 protected void imgbtnfirst_Click(object sender, ImageClickEventArgs e)
{
CurrentPage = 0;
this.databind();
}
protected void imgbtnprevious_Click(object sender, ImageClickEventArgs e)
{
CurrentPage -= 1;
this.databind();
}
protected void dtlpaging_ItemDataBound(object sender, DataListItemEventArgs e)
{
LinkButton lnkbtnPage = (LinkButton)e.Item.FindControl("lnkbtnPaging");
if (lnkbtnPage.CommandArgument.ToString() == CurrentPage.ToString())
{
    lnkbtnPage.Enabled = false;
    lnkbtnPage.CssClass = "pageing_l_active";
}
}

protected void imgbtnnext_Click(object sender, ImageClickEventArgs e)
{
CurrentPage += 1;
this.databind();
}
protected void imgbtnlast_Click(object sender, ImageClickEventArgs e)
{
CurrentPage = (Convert.ToInt32(this.ViewState["totalpages"]) - 1);
this.databind();
}
protected void dtlpaging_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName.Equals("Paging"))
{
    CurrentPage = Convert.ToInt16(e.CommandArgument.ToString());
    this.databind();
}
}