0
我試圖實現與這個類中定義與頁腳一個DataGrid:FLEX - 自定義組件頁腳-的Datagrid - ItemRenderer的 - 「一組數據」功能不能正常工作
https://github.com/ncdc/flex-footer-datagrid
它的工作完美。儘管如此,在第二步中,我嘗試使用此包在一列上實現一個itemrenderer,以顯示具有特定樣式的值。
這裏我的代碼
<footerDataGrid:FooterDataGrid
id="dg_imActivity" width="100%"
dropEnabled="true"
dragDrop="model.checkIfActivityExixts(event)"
dataProvider="{grant!=null?model.activities.grantItems:null}"
editable="true"
itemEditEnd="EditBudgetValue(event)"
rowCount="{grant!=null?dg_imActivity.dataProvider.length + 2:6}"
>
<footerDataGrid:columns>
<mx:DataGridColumn headerText="Title" dataField="title" showDataTips="true" dataTipField="title" editable="false"/>
<mx:DataGridColumn headerText="Type" dataField="type" showDataTips="true" dataTipField="type" editable="false"/>
<mx:DataGridColumn headerText="Pr. Area" dataField="prioAreaName" showDataTips="true" dataTipField="prioAreaName" editable="false"/>
<mx:DataGridColumn headerText="Unit" dataField="unitName" showDataTips="true" dataTipField="unitName" editable="false">
<mx:itemRenderer>
<fx:Component>
<mx:HBox paddingLeft="2" horizontalScrollPolicy="off">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.states.SetStyle;
override public function set data(value:Object) : void {
super.data = value;
if(data.unitName != outerDocument.user.profile.organ.name) {
setStyle("color",0xFF0000);
setStyle("fontWeight", "bold");
}else{
setStyle("color",0xffffff);
setStyle("fontWeight", "normal");
}
}
]]>
</fx:Script>
<mx:Label text="{data.unitName}" width="100%"/>
</mx:HBox>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="Value" dataField="budgetValue" id="budgetValue" showDataTips="true" dataTipField="budgetValue" editable="true"/>
</footerDataGrid:columns>
<footerDataGrid:footer>
<footerDataGrid:SummaryFooter>
<footerDataGrid:columns>
<footerDataGrid:SummaryColumn label='Total'/>
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn operation='sum' precision='2'/>
</footerDataGrid:columns>
</footerDataGrid:SummaryFooter>
<footerDataGrid:SummaryFooter>
<footerDataGrid:columns>
<footerDataGrid:SummaryColumn label='Remaining Budget'/>
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn />
<footerDataGrid:SummaryColumn labelFunction='remainingBudgetActivity' dataColumn='{budgetValue}'/>
</footerDataGrid:columns>
</footerDataGrid:SummaryFooter>
</footerDataGrid:footer>
</footerDataGrid:FooterDataGrid>
我獲得與itemRenderer的一個錯誤。
ReferenceError: Error #1069: Property unitName not found on mx.controls.dataGridClasses.DataGridColumn and there is no default value.
abel顯示不帶風格。所有都被正確定義。顯然,方法集data()被正確調用,但它無法檢索數據對象,我不知道原因。除此之外,我已經嘗試使用默認的數據網格,它正在工作。
請問如何解決這個問題?我需要使用這個包,因爲我需要在數據網格中顯示頁腳。