zoukankan
html css js c++ java
DataGrid分页
DataGrid分页通用
void
initpage()
{
string
topsql
=
string
.Format(
@"
select count(a.ProductCode) from Production as a,MyCompanyWeb as b,Pictures as c
where a.UserSID=b.UserSID and a.ProductCode=c.ProductCode and OneFunSID={0} and State=1
"
,onefunid);
object
o
=
this
.Db.CreateStatement(topsql).GetScalar();
int
rowCount
=
0
;
if
(o
==
null
)
{
CurrentPageIndex
=
0
;
return
;
}
rowCount
=
Convert.ToInt32(o.ToString ());
if
(rowCount
%
PageSize
==
0
)
{
PageCount
=
rowCount
/
PageSize;
}
else
{
PageCount
=
rowCount
/
PageSize
+
1
;
}
lblCount.Text
=
PageCount.ToString();
if
(PageCount
>
0
)
{
CurrentPageIndex
=
1
;
GridBind();
}
else
{
DataList1.DataSource
=
new
DataTable ();
DataList1.DataBind ();
}
SetLinkLutton();
}
void
GridBind()
{
string
sqlstr
=
string
.Empty;
if
(CurrentPageIndex
==
1
)
{
sqlstr
=
String.Format (
@"
select top {0} a.ProductSID,a.ProductCode,ProductName,a.CreateTime,Quality,KeyWords,Amount,b.Company,c.ImageUrl1
from Production as a,MyCompanyWeb as b,Pictures as c
where a.UserSID=b.UserSID and a.ProductCode=c.ProductCode and OneFunSID={1} and State=1 order by a.BallotNew desc,a.CreateTime desc
"
,
this
.PageSize,onefunid);
}
else
{
int
cindex
=
(CurrentPageIndex
-
1
)
*
PageSize;
sqlstr
=
String.Format (
@"
select top {0} a.ProductSID,a.ProductCode,ProductName,a.CreateTime,Quality,KeyWords,Amount,b.Company,c.ImageUrl1
from Production as a,MyCompanyWeb as b,Pictures as c
where a.ProductSID not in (select top {1} a.ProductSID from Production as a,MyCompanyWeb as b,Pictures as c
where a.UserSID=b.UserSID and a.ProductCode=c.ProductCode and a.OneFunSID={2} and State=1 order by a.BallotNew desc,a.CreateTime desc)
and a.UserSID=b.UserSID and a.ProductCode=c.ProductCode and OneFunSID={2} and State=1 order by a.BallotNew desc,a.CreateTime desc
"
,
this
.PageSize.ToString(),cindex.ToString(),onefunid);
}
DataTable tb
=
Db.CreateStatement (sqlstr).GetDataTable ();
if
(tb
!=
null
&&
tb.Rows.Count
>
0
)
{
DataList1.DataSource
=
tb;
DataList1.DataBind ();
}
else
{
DataList1.DataSource
=
new
DataTable ();
DataList1.DataBind ();
}
SetLinkLutton();
lblCur.Text
=
CurrentPageIndex.ToString();
}
public
int
CurrentPageIndex
{
get
{
object
o
=
ViewState[
"
CurrentPageIndex
"
];
return
o
==
null
?
0
:Convert.ToInt32(o);
}
set
{
ViewState[
"
CurrentPageIndex
"
]
=
value;
}
}
public
int
PageCount
{
get
{
object
o
=
ViewState[
"
PageCount
"
];
return
o
==
null
?
0
:Convert.ToInt32(o);
}
set
{
ViewState[
"
PageCount
"
]
=
value;
}
}
public
string
sqlWhere
{
get
{
return
(
string
)ViewState[
"
SqlWhere
"
];
}
set
{
ViewState[
"
SqlWhere
"
]
=
value;
}
}
void
SetLinkLutton()
{
if
(CurrentPageIndex
==
0
)
{
lbtFirst.Enabled
=
false
;
lbtPre.Enabled
=
false
;
lbtNext.Enabled
=
false
;
lbtLast.Enabled
=
false
;
}
else
if
(CurrentPageIndex
==
1
)
{
lbtFirst.Enabled
=
false
;
lbtPre.Enabled
=
false
;
lbtNext.Enabled
=
true
;
lbtLast.Enabled
=
true
;
if
(CurrentPageIndex
==
PageCount)
{
lbtNext.Enabled
=
false
;
lbtLast.Enabled
=
false
;
}
}
else
if
(CurrentPageIndex
==
PageCount)
{
lbtFirst.Enabled
=
true
;
lbtPre.Enabled
=
true
;
lbtNext.Enabled
=
false
;
lbtLast.Enabled
=
false
;
}
else
{
lbtFirst.Enabled
=
true
;
lbtPre.Enabled
=
true
;
lbtNext.Enabled
=
true
;
lbtLast.Enabled
=
true
;
}
}
private
void
lbtLast_Click(
object
sender, System.EventArgs e)
{
this
.CurrentPageIndex
=
PageCount;
GridBind();
}
private
void
lbtNext_Click(
object
sender, System.EventArgs e)
{
if
(CurrentPageIndex
<
PageCount)
{
this
.CurrentPageIndex
=
CurrentPageIndex
+
1
;
GridBind();
}
}
private
void
lbtPre_Click(
object
sender, System.EventArgs e)
{
if
(CurrentPageIndex
>
1
)
{
this
.CurrentPageIndex
=
CurrentPageIndex
-
1
;
GridBind();
}
}
private
void
lbtFirst_Click(
object
sender, System.EventArgs e)
{
this
.CurrentPageIndex
=
1
;
GridBind();
}
查看全文
相关阅读:
<转>浅谈DNS体系结构:DNS系列之一
SOA和NS区别
《浅析各类DDoS攻击放大技术》
《转》DNS放大攻击
Linux创建公钥
MATLAB 中有哪些命令,让人相见恨晚
SQL中的declare用法
SQl server 附加数据库失败如何解决
VS中代码对齐等快捷键
C#窗口控件Dock的位置顺序调整方法
原文地址:https://www.cnblogs.com/hanguoji/p/381351.html
最新文章
ansible基础-安装与配置
ansible基础-理解篇
puppet-type
虚拟机网络不通的场景和解决办法
ruby-attr_accessor使用
ruby-super用法
修改openstack用户配额
puppetdb搭建
豆瓣影评数据抓取与简要分析
Splinter学习--模拟攥写博客园随笔
热门文章
Splinter学习--初探3,两种方式登录QQ邮箱
Splinter学习--初探2,模拟博客园登录
Splinter学习--初探1,模拟百度搜索
Hibernate持久化类属性映射
Hibernate 知识点梳理
Python基础之:List
Python环境下NIPIR(ICTCLAS2014)中文分词系统使用攻略
<转>详解DNS的常用记录(下):DNS系列之三
<转>详解DNS的常用记录(上):DNS系列之二
<转>DNS服务系列之二:DNS区域传送漏洞的安全案例
Copyright © 2011-2022 走看看