System.Data.DataView CreateDataSourceByXianhuiMeng()

{

System.Data.DataTable dt=newSystem.Data.DataTable();

System.Data.DataRow dr;

dt.Columns.Add(newSystem.Data.DataColumn("id",typeof(System.Int32)));

dt.Columns.Add(newSystem.Data.DataColumn("学生姓名",typeof(System.String)));

dt.Columns.Add(newSystem.Data.DataColumn("语文",typeof(System.Decimal)));

dt.Columns.Add(newSystem.Data.DataColumn("数学",typeof(System.Decimal)));

dt.Columns.Add(newSystem.Data.DataColumn("英语",typeof(System.Decimal)));

dt.Columns.Add(newSystem.Data.DataColumn("计算机",typeof(System.Decimal)));for(inti=1; i<30; i++)

{

System.Random rd=newSystem.Random(Environment.TickCount*i); ;

dr=dt.NewRow();

dr[0]=i;

dr[1]="【孟子E章】"+i.ToString();

dr[2]=System.Math.Round(rd.NextDouble()*100,2);

dr[3]=System.Math.Round(rd.NextDouble()*100,2);

dr[4]=System.Math.Round(rd.NextDouble()*100,2);

dr[5]=System.Math.Round(rd.NextDouble()*100,2);

dt.Rows.Add(dr);

}

System.Data.DataView dv=newSystem.Data.DataView(dt);returndv;

}

protectedvoidPage_Load(object sender, EventArgs e)

{if(Request.QueryString["id"]!=null)

{

Response.ClearContent();

GridView1.DataSource=CreateDataSourceByXianhuiMeng();

GridView1.DataBind();

System.Text.StringBuilder sb=newSystem.Text.StringBuilder();

System.IO.StringWriter sw=newSystem.IO.StringWriter(sb);

HtmlTextWriter htw=newHtmlTextWriter(sw);

Literal header=newLiteral();

header.Text="

项目"+Request.QueryString["id"]+"

";

Header.Controls.Add(header);

Header.RenderControl(htw);

GridView1.RenderControl(htw);

Response.Write("这里查询数据,输出结果就可以了。结果:"+sb.ToString());

Response.End();

}

}/// 添加这个override void VerifyRenderingInServerForm(Control control),是为了避免出现/// 类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内。/// 的异常public overridevoidVerifyRenderingInServerForm(Control control)

{ }使用 AJAX,局部刷新 GridView 进行数据绑定的简单实现functionGetData(p) {

document.getElementById("d").innerHTML="正在读取数据……";

h=window.XMLHttpRequest?newwindow.XMLHttpRequest() :newActiveXObject("MSXML2.XMLHTTP");

h.open("GET",'?id='+p.value,true);

h.onreadystatechange=function() {if(h.readyState==4) {if(h.status>=200&&h.status<300) {

document.getElementById("d").innerHTML=h.responseText;

}else{

document.getElementById("d").innerHTML="

数据操作错误:

"+h.responseText;

}

}

}

h.send(null);

}

alert("这个提示,只出现在第一次打开页面。");

项目一项目二
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐