System.Web.HttpException: Page.RegisterRequiresPostBack can only be called on controls that implement IPostBackDataHandler.
   at System.Web.UI.Page.RegisterRequiresPostBack(Control control)
   at Infragistics.WebUI.UltraWebChart.UltraChart.Render(HtmlTextWriter output)
   at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
   at System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer)
   at System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output)
   at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
   at System.Web.UI.Page.Render(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
   at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)注:WEB的系统,代码中没出错,打开页面的时候出的异常

解决方案 »

  1.   

    hdt(倦怠) 
       实现IPostBackDataHandler怎么实现?
      
     
      

  2.   

    using System;
    using System.Web;
    using System.Web.UI;
    using System.Collections;
    using System.Collections.Specialized;
    namespace CustomWebFormsControls {   [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
       public class MyTextBox: Control, IPostBackDataHandler {
              public String Text {
             get {
                return (String) ViewState["Text"];
             }         set {
                ViewState["Text"] = value;
             }
          }      
                public event EventHandler TextChanged;
                public virtual bool LoadPostData(string postDataKey, 
             NameValueCollection postCollection) {         String presentValue = Text;
             String postedValue = postCollection[postDataKey];         if (presentValue == null || !presentValue.Equals(postedValue)) {
                Text = postedValue;
                return true;
             }         return false;
          }      
          public virtual void RaisePostDataChangedEvent() {
             OnTextChanged(EventArgs.Empty);
          }
                protected virtual void OnTextChanged(EventArgs e) {
             if (TextChanged != null)
                TextChanged(this,e);
          }
                protected override void Render(HtmlTextWriter output) {
             output.Write("<INPUT type= text name = "+this.UniqueID
                + " value = " + this.Text + " >");
          }
       }   
    }