亲密接触ASP.Net(14)

来源:互联网 发布:五迷三道 知乎 编辑:程序博客网 时间:2024/06/06 07:33
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
document.write(baiduCproIFrame());-->个性化分页(2)

上一节大家没有看到总的结构,这一节,我把代码全部贴出来,大家好好看看。

<%@PageLanguage="C#"%>
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="System.Data.SQL"%>
<html>
<scriptlanguage="C#"runat="server">

voidPage_Load(Objectsender,EventArgse)
{
    //判断是否隐藏PagerStyle-Mode
    if(chk1.Checked)
    {
        MyDataGrid.PagerStyle.Visible=true;
    }
    else
    {
        MyDataGrid.PagerStyle.Visible=false;
    }

    BindGrid();
}

ICollectionCreateDataSource()
{
    /*
        读取数据库的信息,获得DataView
    */
    SQLConnectionMyConnection=newSQLConnection("server=localhost;uid=sa;pwd=123456;database=ASPcn");
    SQLDataSetCommandMyDataSetCommand=newSQLDataSetCommand("select*fromadmin_enterorderbyEnter_Timedesc",MyConnection);
    DataSetds=newDataSet();
    MyDataSetCommand.FillDataSet(ds,"admin_enter");
    returnds.Tables["admin_enter"].DefaultView;
}

voidPagerButtonClick(Objectsender,EventArgse)
{
    //获得LinkButton的参数值
    Stringarg=((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;
        default:
            //本页值
            MyDataGrid.CurrentPageIndex=arg.ToInt32();
            break;
    }
    BindGrid();
}

voidMyDataGrid_Page(Objectsender,DataGridPageChangedEventArgse)
{
    //处理按下数字的方法
    BindGrid();
}

voidBindGrid()
{
    //将DataView绑定到DataGrid上去
    MyDataGrid.DataSource=CreateDataSource();
    MyDataGrid.DataBind();
    ShowStats();
}

voidShowStats()
{
    //显示页面信息
    lblCurrentIndex.Text="当前页数为:"+((int)MyDataGrid.CurrentPageIndex+1);
    lblPageCount.Text="总页数是:"+MyDataGrid.PageCount;
}

</script>

<body>

<h3><fontface="Verdana">个性化的分页实例^&^</font></h3>

<formrunat=server>

<ASP:DataGridid="MyDataGrid"runat="server"
AllowPaging="True"
PageSize="10"
PagerStyle-Mode="NumericPages"
PagerStyle-HorizontalAlign="Right"
OnPageIndexChanged="MyDataGrid_Page"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
AlternatingItemStyle-BackColor="#eeeeee"
AutoGenerateColumns="false"

>
<propertyname="Columns">
<ASP:BoundColumnHeaderText="工作室成员"DataField="Enter_ID"/>
<ASP:BoundColumnHeaderText="登陆时间"DataField="Enter_Time"/>
</property>
</ASP:DataGrid>

<p>
<ASP:LinkButtonid="btnFirst"runat="server"
Text="首页"
CommandArgument="0"
ForeColor="navy"
Font-Name="verdana"Font-size="8pt"
OnClick="PagerButtonClick"
/>
&nbsp;
<ASP:LinkButtonid="btnPrev"runat="server"
Text="前页"
CommandArgument="prev"
ForeColor="navy"
Font-Name="verdana"Font-size="8pt"
OnClick="PagerButtonClick"
/>
&nbsp;
<ASP:LinkButtonid="btnNext"runat="server"
Text="后页"
CommandArgument="next"
ForeColor="navy"
Font-Name="verdana"Font-size="8pt"
OnClick="PagerButtonClick"
/>
&nbsp;

<ASP:LinkButtonid="btnLast"runat="server"
Text="末页"
CommandArgument="last"
ForeColor="navy"
Font-Name="verdana"Font-size="8pt"
OnClick="PagerButtonClick"
/>


<p>
<ASP:Checkboxid="chk1"runat="server"
Text="显示内置的页数"
Font-Name="Verdana"
Font-Size="8pt"
AutoPostBack="true"
/>

<p>
<tablebgcolor="#eeeeee"cellpadding="6"><tr><tdnowrap><fontface="Verdana"size="-2">

<ASP:Labelid="lblCurrentIndex"runat="server"/><br>
<ASP:Labelid="lblPageCount"runat="server"/><br>

</font></td></tr></table>
</form>

</body>

</html>

上面是全部的源代码,执行后的显示是:



图14-1

按下随便一个键,比如"末页"



图14-2

看,我们的程序就直接到了最后一页,即第5页,我们在下面的"当前页数"可以看到:)

我们再来点击"显示内置的页数"这个复选框,看看:



图14-3

看,我们前两节看到的那些小数字也出来了:)
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击