Asp.Net中用户自定义控件实现IPostBackDataHandler

在用户自定义控件过程中,需要在回传过程中保存控件的某个值,需要实现IPostBackDataHandler接口,此接口有两个方法:
  1.public bool LoadPostData(string postDataKey, System.Collections.Specialized.NameValueCollection postCollection)
  2.public void RaisePostDataChangedEvent()
其中第一个方法的作用是,调入回传的数据,并确定数据是否在上次操作中进行了更改;第二个方法作用是触发数据更改的事件。

例子:


public   class  ImplIPostBackDataHandlerDemo : System.Web.UI.WebControls.WebControl, IPostBackDataHandler
{
    
public DateTime SelectedDateTime
    
{
        
get
        
{
            
if (null == this.ViewState["SelectedDateTime"])
                
return DateTime.MinValue;
            
return Convert.ToDateTime(this.ViewState["SelectedDateTime"]);
        }

        
set
        
{
            
this.ViewState["SelectedDateTime"= value;
        }

    }


    
/// <summary>
    
/// SelectedDateTimeChanged事件
    
/// </summary>

    public event EventHandler SelectedDateTimeChanged
    
{
        add
        
{
            
base.Events.AddHandler(OnSelectedDateTimeChanged, value);
        }

        remove
        
{
            
base.Events.RemoveHandler(OnSelectedDateTimeChanged, value);
        }

    }


    
protected void OnSelectedDateTimeChange(EventArgs e)
    
{
        EventHandler handler 
= (EventHandler)base.Events[SelectedDateTimeChanged];
        
if (handler != null)
        
{
            handler(
this, e);
        }

    }



    
IPostBackDataHandler Members
}

 

你可能感兴趣的:(String,null,Class,asp.net)