asp.Netカスタムコントロール再送データ実装方案とコード

985 ワード

aspを実現する.Netのカスタムコントロールでは、データの再送またはpostデータを実現するには、カスタムコントロールがIPostBackDataHandlerインタフェースを実現する必要があります.このインタフェースには、LoadPostDataとRaisePostDataChangedEventの2つの方法があります.1つ目のメソッドは、データの再送時にカスタムコントロールの関連プロパティを入力するために使用され、2つ目のメソッドは、コントロール関連イベントを励起するために使用されます.すなわち,この2つの方法は,データをコミットする際に呼び出されるべきである.
しかし,我々は独自のコントロールを実現する際には,IPostBackDataHandlerを継承しているが,データをコミットする際には,プログラムがIPostBackDataHandlerのメソッドを呼び出していないことを確認している.データの再送を実現するには,IPostBackDataHandlerインタフェースの実装に加えて,再送数を必要とするコントロールに登録する必要があることが分かった.登録を実現するには、カスタムコントロールにOnPrenderメソッドを書き換え、そのメソッドでPageを呼び出す.RegisterRequiresPostBack(this);このコード.書き方は以下の通りです.
 
  
public class MyControl : WebControl, IPostBackDataHandler{

protected override void OnPreRender(EventArgs e)
{
Page.RegisterRequiresPostBack(this);

base.OnPreRender(e);
}

}

以上のコードを実装することで,データのコミット時にIPostBackDataHandlerインタフェースのメソッドが発見され,呼び出される.次に、どうすればいいか、分かりますよ.