定义自定义组件属性和引发 PropertyChanged 事件
更新:2007 年 11 月
创建客户端组件类时,您可以定义希望页面开发人员访问的属性。您还可以在 set 访问器中为您组件的属性引发 Sys.Component.propertyChanged 通知事件。当属性值发生更改时,使用组件的页面开发人员可以将属性通知事件绑定到他们自己的处理程序,以运行代码。
在自定义客户端组件中定义公共属性
在 ASP.NET AJAX客户端组件中,属性访问器定义为类原型的方法。访问器方法的名称带有 get_ 和 set_ 前缀,前缀后是属性名称。下面的示例显示如何在类原型中定义名称为 interval 的读写属性。
get_interval: function() {
return this._interval;
},
set_interval: function(value) {
this._interval = value;
}
引发 PropertyChanged 事件
您可以在属性 set 访问器中调用 Sys.Component raisePropertyChanged 方法,以引发 propertyChanged 事件。您的组件可从 Sys.Component、Sys.UI.Behavior 或 Sys.UI.Control 基类继承 raisePropertyChanged 方法。
下面的示例演示每当对属性进行设置时,如何为 interval 属性引发 propertyChanged 事件。
get_interval: function() {
return this._interval;
},
set_interval: function(value) {
if (this._interval !== value) {
this._interval = value;
this.raisePropertyChanged('interval');
}
}
有关如何引发和处理自定义组件的 propertyChanged 事件的示例,请参见创建自定义非可视客户端组件。有关 raisePropertyChanged 方法的更多信息,请参见 Sys.Component.raisePropertyChanged 方法。