1

.NET リピーターでは、#Eval('') ディレクティブでメソッドを呼び出す方法はありますか? たとえば、DateTime プロパティを持つオブジェクトにバインドしている場合、#Eval("ADateTimeProperty.ToString('hh:mm')") などを設定すると非常に便利です。書式設定された DateTime を返す別のプロパティを作成する唯一のオプションはありますか?

4

2 に答える 2

4

絶対。ただし、日時の問題については、次を使用できます。

<%# ((DateTime)Eval("ADateTimeProperty").ToString("hh:mm") %>

メソッドを呼び出したい場合は、次のようにします。

<%# MyCustomMehtod(Eval("ADateTimeProperty")) %>

コード ビハインドについては次のとおりです。

protected string MyCustomMethod(object input)
{
    return DateTime.Parse(input.ToString()).ToString("hh:mm");
}
于 2009-06-05T21:46:34.423 に答える
2

Evalフォーマット文字列を 2 番目のパラメーターとして受け取るメソッド のオーバーロードを使用できます。

<%# Eval("ADateTimeProperty", "{0:hh:mm}") %>
于 2009-06-05T21:50:38.987 に答える