ExtenderControlProperty双向绑定?

问题描述:

我正在创建一个AJAX Extender控件,并希望在回发后将值传递回服务器。ExtenderControlProperty双向绑定?

ExtenderControlProperties是双向的吗?如果没有,有什么办法让他们两种?

显然ExtenderControlProperties不是双向的。我用隐藏域解决了这个问题。这是我实现它的方式。

我把这个在扩展

protected override void OnInit(EventArgs e) 
    { 
     HiddenFieldId = ClientID + "_HiddenValue"; 
     Page.ClientScript.RegisterHiddenField(HiddenFieldId, ""); 
     base.OnInit(e); 
    } 

    [ExtenderControlProperty] 
    [DefaultValue("")] 
    public string HiddenFieldId 
    { 
     get { return GetPropertyValue("HiddenFieldId", ""); } 
     set { SetPropertyValue("HiddenFieldId", value); } 
    } 

    public string HiddenFieldValue 
    { 
     get { return Page.Request.Form[HiddenFieldId]; } 
    } 

,这在行为

//In the prototype 
get_HiddenFieldId: function() { 
    return this._hiddenFieldId; 
}, 
set_HiddenFieldId: function(value) { 
    this._hiddenFieldId = value; 
}, 

//In the initialisation 
this._hiddenFieldId = null; 

//In my method when I want to set the hidden value. 
document.getElementById(this._hiddenFieldId).value = valueToSet;