<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ExtShow.aspx.cs" Inherits="ExtTest_ExtShow" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<link href="../Ext/resources/css/ext-all.css" rel="Stylesheet" type="text/css" />
<script src="../Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="../Ext/ext-all.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div>
<script type="text/javascript">
function ready()
{
var url="ExtShowBack.aspx";
var sm=new Ext.grid.CheckboxSelectionModel();
var cm = new Ext.grid.ColumnModel
([
sm, new Ext.grid.RowNumberer({ header: "序号", width: 50 }),
{ header: "标题", dataIndex: "Title", width: 100, editor: new Ext.form.TextField() },
{ header: "创建人", dataIndex: "CreatePerson", width: 100,editor: new Ext.form.TextField() },
{ header: "创建时间", dataIndex: "CreateTime", width: 100,editor: new Ext.form.TextField() },
{ header: "内容", dataIndex: "NewsContent", width: 100,editor: new Ext.form.TextField() },
{ header: "操作", dataIndex: "NewId", width:100, renderer:function(value) {if(value==""){return "dff"}else{return "<a href='../Update.aspx?NewId="+value+"'>更新</a>"} } } ,
{ header: "操作", dataIndex: "NewId", width:100, renderer:function(value) {if(value==""){return "dff"}else{return "<a href='../Delete.aspx?NewId="+value+"'>删除</a>"} } }
]);
var fields=
[
{name:"Title"},
{name:"CreatePerson"},
{name:"CreateTime"},
{name:"NewsContent"},
{name:"NewId"},
{name:"NewId"}
];
//Ext.data.Store是EXT中用来进行数据交换和数据交互的标准中间件,
//无论是Grid还是ComboBox,都是通过它实现数据读取、类型转换、排序分页和搜索等操作的
var store = new Ext.data.Store
({
proxy: new Ext.data.HttpProxy({ url: url }),
//设置Store的参数
reader: new Ext.data.JsonReader({ totalProperty: "totalPorperty", root: "root", fields: fields })
});
store.load({ params: { start: 0, limit: 10} });
//制定页面中输出的内容及格式
var pagingBar = new Ext.PagingToolbar
({
displayInfo: true, emptyMsg: "没有数据显示", displayMsg: "显示从{0}条数据到{1}条数据,共{2}条数据",
store: store,
pageSize: 10
});
var grid = new Ext.grid.GridPanel
({
id: "MenuGridPanel",
renderTo: document.body,
layout: "fit",
frame: true,
border: true,
width: 600,
height: 200,
autoScroll: true,
store: store,
sm: sm,
cm: cm,
viewConfig: { forceFit: true },
//title: 'Ext2.2全新功能版系列之--显示列表',
bbar: pagingBar
});
}
</script>
<script type="text/jscript">Ext.onReady(ready)</script>
</div>
</form>
</body>
</html>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Collections.Generic;
using News.MODLE;
using News.BLL;
using Newtonsoft.Json;
public partial class ExtTest_ExtShowBack : System.Web.UI.Page
{
List<NewsContent> listNews = NewsContentManager.searchNews();
protected void Page_Load(object sender, EventArgs e)
{
int pageSize = 20;
int start = 0;
string field, asc_desc;
if (string.IsNullOrEmpty(Request["sort"]))
{
field = "NewsId";
asc_desc = "asc";
}
else
{
field = Request["sort"];
asc_desc = Request["dir"];
}
if (!string.IsNullOrEmpty(Request["limit"]))
{
pageSize = int.Parse(Request["limit"]);
start = int.Parse(Request["start"]);
}
Select(field,asc_desc,pageSize,start);
}
void Select(string keyId, string asc_desc, int pageSize, int start)
{
string json = "";
try
{
int itemCount = (start + pageSize) > listNews.Count ? listNews.Count : (start + pageSize);
List<NewsContent> pageList = new List<NewsContent>();
for (int index = start; index < itemCount; index++)
{
pageList.Add(listNews[index]);
}
json = "{totalPorperty:" + listNews.Count + ",root:" + JsonConvert.SerializeObject(pageList) + "}";
}
catch (Exception e)
{
Console.WriteLine(e.Message);
throw e;
}
Response.Write(json.ToString());
Response.End();
}
}