0

http://www.telerik.com/help/aspnet-ajax/grdbindingtosubobjects.htmlで定義されている構文を使用して、多数の子データオブジェクトを問題なく列にバインドするグリッドがあります。

しかし、私が理解できないのは、リストまたはコレクションである子オブジェクトを集約する方法です。たとえば、Customerオブジェクトがあり、顧客の最初の番地を取得したい場合DataField="Customer.Addresses[0].Street"は、標準で使用しますGridBoundColumn。アドレスの数を取得するにはどうすればよいですか?私はあらゆる種類のGridCalculatedColumnDataFieldsとExpressionsを試しましたが、役に立ちませんでした。私はこれに沿って何かを探しています:

もちろん、それは機能しません。実際、点線のデータフィールドでカウントを実行しようとすると、例外が発生します。

" System.Data.SyntaxErrorException:集計引数の構文エラー:'子'修飾子の可能性がある単一の列引数が必要です。 "

たとえば、Count({0})DataFieldsがCustomer.FirstName(1つしかない)に設定された式を使用しようとすると、実行時にその例外がスローされます。SendDateなどのドットのないデータフィールドで同じことを行っても、同じ例外は発生しません。

4

1 に答える 1

2

Telerikフォーラムからこの質問への回答をすでに受け取っているようですが、この質問に出くわして回答を探している人にとっては。

基本的に、RadGridはDataFieldsにCollectionsを含めることをサポートしていません。サポートされているバインド可能なプロパティの種類は、ここにあります。したがって、この集計に関しては、RadGridにバインドする前にこのコレクション全体で計算を実行して集計列を定義するか、このデモのようにフッターの使用を検討することができます。

于 2010-08-19T15:51:18.233 に答える