0

リピーター テンプレートで次のコードを呼び出せるようにする asp.net リピーター コントロールの拡張メソッドを作成しようとしています。これは、リピーターで独自の Eval メソッドを呼び出したいということです。

<%# UmbracoEval("propertyName") %>

Repeater コントロール自体と NamingContainer をターゲットにしようとしましたが、コンテナーが保護されているため、アクセシビリティ エラーが発生します。

これは可能ですか?マークアップから拡張メソッドを呼び出したことがないので、よくわかりません。ありがとう。

4

1 に答える 1

1

Eval または Bind - UmbracoEval(Eval("propertyName"))またはが必要UmbracoEval(Bind("propertyName"))です。

Eval と Bind はどちらもオブジェクトを返すため、オブジェクトの拡張メソッドはお勧めできません。

UmbracoEvalただし、コード ビハインドで作成し、aspx から呼び出すことができます。

protected string UmbracoEval(object eval)
{
    return eval.ToString() + " abc"; // do something
}
于 2013-02-14T17:03:08.273 に答える