0

これは簡単な作業のように思えますが、解決策を見つけることができませんでした。列が定義されていない DataGrid がありますが、ItemRenderer (DataGrid 自体) があります。データが入力されたときに、データグリッドがこの ItemRenderer を使用するようにします。

<mx:DataGrid id="dataGrid" height="100%" width="100%" itemRenderer="my.renderer" />

DataGrid コードを見ると、これは定義済みの列に対してのみ行う必要があるように見えます。私が見つけた唯一の回避策は、dataProvider を入力した後に itemRenderer を割り当てることでした (これにより、列が自動的に作成されます)。

4

2 に答える 2

1

ItemRenderer は列で定義されます。DataGrid 上ではないため、コードがコンパイラ エラーをスローすると予想されます。

itemRenderer はプロパティであるため、DataGridColumn で CSS を使用して設定することはできません。

ただし、MX DataGrid には、GridColumns に渡す必要があるスタイル名 defaultDataGridItemRenderer があります。それを CSS で設定し、それを使用して各列のデフォルトの itemRenderer を定義できるはずです。

最終的に dataProvider を取得したとき。ActionScript で列を手動で作成し、各列に itemRenderer をそのように設定することもできます。

私の最初の提案は、defaultDataGridItemRenderer スタイルを発見する前に、DataGridColumn クラスを拡張してデフォルトの itemRenderer 値を設定できると言うことでした。ただし、提供したコード サンプルでは、​​列を手動で定義していません。そのため、カスタム列クラスを使用するには、DataGrid も拡張する必要があります。

于 2013-11-12T16:49:14.913 に答える