2009-05-21 4 views
1

現在、リピーターが空のときにメッセージを表示するユーザーコントロールを作成しています。データバインディング(他のコントロール)とレンダーの間には、どのユーザーコントロールイベントが入りますか?

アイデアは簡単ですが、ユーザーコントロールにリピーターのIDを指定してください。ユーザーコントロールがレンダリングされると、リピータを検索し、Items.Countをチェックします。ゼロの場合は、メッセージを表示します。

もう1つの機能を追加したいと思います。私はできるようにしたいリピーターがない場合は、非表示にします。

明らかに、私はprotected override void Render(HtmlTextWriter writer)でこれを行うことはできません。なぜならRepeaterは既に(おそらく)レンダリングされているからです。また、データバインディングがまだ行われていないため、Repeater IDがユーザーコントロールに割り当てられているときにこれを行うことはできません。

だから私の質問は、私はデータバインディングがを発生しているが、レンダリングがをしていない私のユーザーコントロールにどのようなイベントを上書きすることができます。..です。

答えて

2

PageのPreRenderイベントについて考えてみましょう。そのようにバインドされていますが、何も表示されていません。

+0

すべてのコードが私のユーザーコントロールにある必要があります。 – James

+0

ああ..実際に私はあなたが何を意味するか知っていると思います。私はあなたのUser Controlに 'protected void Page_PreRender(オブジェクト送信者、EventArgs e)の署名を追加できます。私はそれを試みます。 – James

+0

はい、そのトリックでした。ありがとう。 – James

関連する問題