ヘッダー レンダラーで高度なデータグリッドの列フィールド プロパティにアクセスする必要があります。基本的に私が達成しようとしているのは、列ヘッダーフィールドをクリックするたびに、対応する列フィールドをアラートのように取得できるということです。
以下は、高度なデータグリッドのグループ化された列のコードです:-
<mx:groupedColumns>
<mx:AdvancedDataGridColumn dataField="Category" sortable="false" headerWordWrap="true" wordWrap="true" width="150"/>
<mx:AdvancedDataGridColumnGroup id="dgSampleGridGroup" headerText="Student" fontFamily="Arial" backgroundColor="0xd7e9f8" childrenDragEnabled="false">
<mx:AdvancedDataGridColumn dataField="Name" sortable="false" headerWordWrap="true" wordWrap="true" headerRenderer="customHeaderRenderer"/>
<mx:AdvancedDataGridColumn dataField="Branch" sortable="false" headerWordWrap="true" wordWrap="true"/>
<mx:AdvancedDataGridColumn dataField="RollNumber" sortable="false" wordWrap="true"/>
</mx:AdvancedDataGridColumnGroup>
</mx:groupedColumns>
以下は、私が使用したヘッダーレンダラーです。
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import flash.net.navigateToURL;
import mx.controls.Alert;
override public function set data( value:Object ) : void {
super.data = value;
}
protected function linkbutton1_clickHandler(event:MouseEvent):void
{
Alert.show("Column 1:Student Name");
Alert.show("Group Header",this.parentDocument.groupHeader);
}
]]>
</mx:Script>
<mx:LinkButton label="Student Name" click="linkbutton1_clickHandler(event)" width="50"/>
</mx:HBox>
ここでは、アラートを列ヘッダー名でハードコーディングしただけです。すべての列でヘッダー レンダラーを再利用できるように、列ヘッダー フィールドを取得したいと考えています。私を助けてください。