using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq; namespace AjaxServerControl1
{
/// <summary>
/// ServerControl1 的摘要说明
/// </summary>
public class ServerControl1 : System.Web.UI.WebControls.Button , IScriptControl
{
public ServerControl1():base()
{
}
public string ClientClickFunction
{
get
{
object value = ViewState["clientClickFunction"];
return (value == null) ? string.Empty : (string)value;
}
set
{
ViewState["clientClickFunction"] = value;
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
ScriptManager scriptManager = ScriptManager.GetCurrent(Page);
if (scriptManager == null)
{
throw new InvalidOperationException("ScriptManager required on the page.");
}
scriptManager.RegisterScriptControl(this);
}
protected override void Render(HtmlTextWriter writer)
{
base.Render(writer);
if (!DesignMode)
{
ScriptManager.GetCurrent(this.Page).RegisterScriptDescriptors(this);
}
}
public IEnumerable <ScriptDescriptor> GetScriptDescriptors()
{
ScriptControlDescriptor descriptor = new ScriptControlDescriptor("AjaxServerControl1.ClientControl1", this.ClientID);
descriptor.AddEvent("click", ClientClickFunction);
yield return descriptor;
}
// 生成脚本引用
public IEnumerable <ScriptReference> GetScriptReferences()
{
yield return new ScriptReference("AjaxServerControl1.ClientControl1.js", this.GetType().Assembly.FullName);
}
}
}
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq; namespace AjaxServerControl1
{
/// <summary>
/// ServerControl1 的摘要说明
/// </summary>
public class ServerControl1 : System.Web.UI.WebControls.Button , IScriptControl
{
public ServerControl1():base()
{
}
public string ClientClickFunction
{
get
{
object value = ViewState["clientClickFunction"];
return (value == null) ? string.Empty : (string)value;
}
set
{
ViewState["clientClickFunction"] = value;
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
ScriptManager scriptManager = ScriptManager.GetCurrent(Page);
if (scriptManager == null)
{
throw new InvalidOperationException("ScriptManager required on the page.");
}
scriptManager.RegisterScriptControl(this);
}
protected override void Render(HtmlTextWriter writer)
{
base.Render(writer);
if (!DesignMode)
{
ScriptManager.GetCurrent(this.Page).RegisterScriptDescriptors(this);
}
}
public IEnumerable <ScriptDescriptor> GetScriptDescriptors()
{
ScriptControlDescriptor descriptor = new ScriptControlDescriptor("AjaxServerControl1.ClientControl1", this.ClientID);
descriptor.AddEvent("click", ClientClickFunction);
yield return descriptor;
}
// 生成脚本引用
public IEnumerable <ScriptReference> GetScriptReferences()
{
yield return new ScriptReference("AjaxServerControl1.ClientControl1.js", this.GetType().Assembly.FullName);
}
}
}
解决方案 »
- ASP.NET+ACCESS,XP下运行良好,到2003上,网站能打开,但是不能从access中读出数据,网站一片空白,求助。
- GridView删除问题
- 客户端向服务器端提交方式有哪些?
- 在C#中如何得到HTML控件的值和在Javascript(客户端)如何得到服务器控件的值?
- 高手帮忙解决分页问题
- 请问谁使用过Google Analytics API?请教个问题
- 一个字符查找问题,没有特殊规律性,大家请看看
- 使用javascript打开一个窗口,我想在此窗口里设置一个背景图片?请各位教教在下.
- 简单问题,相当于散分,给我一个menu绑定数据库字段,和menu的事件(MenuItemClick)处理例子,VS2005,初学,不好意思.
- 换行!??
- ASP.NET 动态控件?
- datagrid批量录入
Type.registerNamespace("AjaxServerControl1"); AjaxServerControl1.ClientControl1 = function(element) {
this._clickHandler = null;
AjaxServerControl1.ClientControl1.initializeBase(this, [element]);
} AjaxServerControl1.ClientControl1.prototype = {
initialize: function() {
AjaxServerControl1.ClientControl1.callBaseMethod(this, 'initialize');
this._clickHandler = Function.createDelegate(this, this._onClick);
$addHandlers(target, {'click': this._clickHandler}, this);
// 在此处添加自定义初始化
},
dispose: function() {
//在此处添加自定义释放操作
delete this._clickHandler;
AjaxServerControl1.ClientControl1.callBaseMethod(this, 'dispose');
},
add_click : function(handler) {
this.get_events().addHandler('click', handler);
},
remove_click : function(handler) {
this.get_events().removeHandler('click', handler);
},
_onClick : function(e) {
e.preventDefault();
var handler = this.get_events().getHandler('click');
if (handler != null) {
handler(this, Sys.EventArgs.Empty);
}
}
}
AjaxServerControl1.ClientControl1.registerClass('AjaxServerControl1.ClientControl1', Sys.UI.Control); if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();