内部にカスタム サーバー側コントロールを含む Reapter コントロールがあります。コードを配置すると:
<%# Eval("DateAdded") %>
リピーターの項目テンプレート内では正常に動作しますが、リピーター内のカスタム サーバー コントロール内に配置すると動作しません。カスタム コントロールではなく Reapeter のコンテキストに戻るために、Parent.Eval() や Container.Eval() のようなことを行うことは可能ですか?
内部にカスタム サーバー側コントロールを含む Reapter コントロールがあります。コードを配置すると:
<%# Eval("DateAdded") %>
リピーターの項目テンプレート内では正常に動作しますが、リピーター内のカスタム サーバー コントロール内に配置すると動作しません。カスタム コントロールではなく Reapeter のコンテキストに戻るために、Parent.Eval() や Container.Eval() のようなことを行うことは可能ですか?
動作するはずです。サーバーコントロールにさらにコンテキスト/コードを提供できますか?
また、一重引用符を使用して、evalを使用してコントロールのプロパティを動的に設定していますか?二重引用符は、無視されるだけでなく、エラーをスローする必要があります。
MyProperty='<%# Eval("DateAdded") %>'
リピーターはデータバインドされていますが、この eval ステートメントを配置しているコントロールはそうではありません。プロパティを使用して値をコントロールに渡す必要があります。
例えば:
<uc1:MyControl MyProperty='<%# Eval("DateAdded") %>' />
コントロール内のMyProperty
プロパティにアクセスして、この値にアクセスできるようになりました。