asp.net回调更新gridview
以前写过关于回调的代码,今天想用的时候又找不到了,费了好大劲才搞定,纪录一下,以备后用。
其实比较简单,关键是最后一行调用的函数renderGrid(_grid)。
public string sCallBackFunctionInvocation;
string returnstring;
protected void Page_Load(object sender, EventArgs e)
{
sCallBackFunctionInvocation = Page.ClientScript.GetCallbackEventReference(this, "message", "processMyResult", "context", "postMyError", true);
}
#region ICallbackEventHandler Members
string ICallbackEventHandler.GetCallbackResult()
{
return returnstring;
}
void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
{
if (eventArgument == "getservertime")
{
//returnstring = DateTime.Now.ToString();
_grid.DataSource = _sampleData;
_grid.DataBind();
renderGrid(_grid);
}
}
利用ASP.NET中最为强大的特性 - RenderControl。该方法能使我们方便地在服务器端 通过HtmlTextWriter和StirngWriter对象访问到控件的HTML代码。
private void renderGrid(GridView _grid)
{
using ( StringWriter sw = new StringWriter())
{
HtmlTextWriter htw = new HtmlTextWriter(sw);
_grid.RenderControl(htw);
htw.Flush();
returnstring = sw.ToString();
}
}
前台响应函数是:
function processMyResult(returnmessage, context){
window.document.getElementById('Gridview').innerHTML = returnmessage;
}
这样就实现了通过回调函数局部更新gridview。
相关文档:
首先在应用程序的WEB.CONFIG修改如下节点。
<httpHandlers>
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>
<assemblies>
<buildProviders>
<add ext ......
窗体代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using AgentObjects;
using SpeechLib;
using System.Web;
using System.Threading;
using System.Text.RegularExpressio ......
DBHelper:
/// <summary>
/// 执行查询
/// </summary>
/// <param name="sql">有效的select语句</param ......
1. 使用QueryString变量
QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:
a.aspx的C#代码
private void Button1_Click(object se ......
今天去面试刚刚回来,趁着刚才提问的问题还在脑海里,现在赶快写出来分享分享,问的问题比较的多。,单圈是关于ASP.net和它周边的技术问题,我有几个都没回答上来,修炼不够啊
(1)首先是让我介绍一下自己的情况::我就从大一开始说,学到的关于网络、软件这方面的知识,一直说到大四,现在找工作,是不是缺少啥呢??。 ......