是做一个repeater分页
在网上找了一段代码不是很明白
/// 生成数据源(一个Datatable)
/// </summary>
/// <returns></returns>
public DataTable CreateDataSource()
{
DataTable dt;
DataRow dr;
dt=new DataTable();
//添加列
dt.Columns.Add(new DataColumn("IntegerValue", System.Type.GetType("System.Int32")));
dt.Columns.Add(new DataColumn("StringValue", System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("DateTimeValue", System.Type.GetType("System.DateTime")));
dt.Columns.Add(new DataColumn("BoolValue", System.Type.GetType("System.Boolean")));
//填充数据
for( int i=0;i<50;i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now.ToShortTimeString();
if(i%2!=0)
{
dr[3] = true;
}
else
{
dr[3] = false;
}
dt.Rows.Add(dr);
}
return dt;}我已经取出DataTble的值了,DataTable dt = issued.GetPromulgated();所以那个添加列是不是可以去掉,那我这个for循环怎么写,
就是对这个填充数据不是很白
在网上找了一段代码不是很明白
/// 生成数据源(一个Datatable)
/// </summary>
/// <returns></returns>
public DataTable CreateDataSource()
{
DataTable dt;
DataRow dr;
dt=new DataTable();
//添加列
dt.Columns.Add(new DataColumn("IntegerValue", System.Type.GetType("System.Int32")));
dt.Columns.Add(new DataColumn("StringValue", System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("DateTimeValue", System.Type.GetType("System.DateTime")));
dt.Columns.Add(new DataColumn("BoolValue", System.Type.GetType("System.Boolean")));
//填充数据
for( int i=0;i<50;i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now.ToShortTimeString();
if(i%2!=0)
{
dr[3] = true;
}
else
{
dr[3] = false;
}
dt.Rows.Add(dr);
}
return dt;}我已经取出DataTble的值了,DataTable dt = issued.GetPromulgated();所以那个添加列是不是可以去掉,那我这个for循环怎么写,
就是对这个填充数据不是很白
解决方案 »
- RDLC报表表达式写法
- 问一个邪恶点的问题,如何往别人的数据库里写入代码
- 无法通过IP加端口访问
- 散分了,回归C#了
- 点击网页后退按钮返回上页时为什么不执行 Private Sub Page_Load中的语句
- 怎样防止 多个人在同一时刻对同一条记录进行修改?
- 哪有水晶报表v10的企业版下载啊??
- File.Exists(string),当string为url时好像不行,求助?
- 关于 Master/Detail/SubDetail 表的输入问题请教,在线等待
- ASP.NET站点的ASPX页面在首次运行时需要编译,速度较慢,有没有什么工具可以对其进行全部主动编译?
- MVC学习
- 用asp.net创建cookie,用javascript读不出cookie的值,求帮助!
建立一个新的DT 然后遍历分别将2个dt的内容加进去!!
for( int i=0;i<50;i++)
{//新建一行ROW
dr = dt.NewRow();
//第一列的值
dr[0] = i;
//第二列的值 是由Item+i组成的 类似Item1、Item2....
dr[1] = "Item " + i.ToString();
//第三列的值 是由当前时间的短日期格式组成
dr[2] = DateTime.Now.ToShortTimeString();
//如果是奇数列
if(i%2!=0)
{//第四列的值为真
dr[3] = true;
}
else
{//否则为假
dr[3] = false;
}
//把这一列加到dt中
dt.Rows.Add(dr);
}
//循环结束 返回
return dt;[/color]}
//根据循环次数 重复添加最后组成一个50条数据的dt
{
if (!IsPostBack)
{
PagedDataSource Pgds = new PagedDataSource();
Pgds.DataSource = CreateDataSource().DefaultView;
Pgds.AllowPaging = true;
Pgds.PageSize = 6;
(Repeater1.FindControl("lblTotalPage") as Label).Text = Pgds.PageCount.ToString();
int CurrentPage;
if (Request.QueryString["Page"] != null)
{
CurrentPage = Convert.ToInt32(Request.QueryString["Page"]);
}
else
{
CurrentPage = 1;
}
Pgds.CurrentPageIndex = CurrentPage - 1;
(Repeater1.FindControl("lblCurrentPage") as Label).Text = CurrentPage.ToString();
if (!Pgds.IsFirstPage)
{
//Request.CurrentExecutionFilePath为当前请求虚拟路径
(Repeater1.FindControl("lnkPrev") as HyperLink).NavigateUrl = Request.CurrentExecutionFilePath +
"?Page=" + Convert.ToString(CurrentPage - 1);
}
if (!Pgds.IsLastPage)
{
//Request.CurrentExecutionFilePath为当前请求虚拟路径
(Repeater1.FindControl("lnkNext") as HyperLink).NavigateUrl = Request.CurrentExecutionFilePath +
"?Page=" + Convert.ToString(CurrentPage + 1);
}
//数据绑定
//DataTable sql = issued.GetPromulgated();
Repeater1.DataSource = Pgds;
Repeater1.DataBind();
}
}
//分页控制
public DataTable CreateDataSource()
{
DataTable dt;
DataRow dr;
dt = new DataTable();
dt = issued.GetPromulgated();
//添加列
//dt.Columns.Add(new DataColumn("IntegerValue", System.Type.GetType("System.Int32")));
//dt.Columns.Add(new DataColumn("StringValue", System.Type.GetType("System.String")));
//dt.Columns.Add(new DataColumn("DateTimeValue", System.Type.GetType("System.DateTime")));
//dt.Columns.Add(new DataColumn("BoolValue", System.Type.GetType("System.Boolean")));
//填充数据
for (int i = 0; i < 50; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now.ToShortTimeString();
if (i % 2 != 0)
{
dr[3] = true;
}
else
{
dr[3] = false;
}
dt.Rows.Add(dr);
}
return dt;
}