以下是用于员工报告的MXML文件的片段。
<mx:AdvancedDataGrid id="adgID"
dataProvider="{empList}"
width="720" height="450"
defaultLeafIcon="{null}"
selectionColor="#B5B2B2" rollOverColor="#6AB9F7"
showEffect="{}">
<mx:columns >
<mx:AdvancedDataGridColumn dataField="empId" headerText="Employee ID"/>
<mx:AdvancedDataGridColumn dataField="dept" headerText="Department" />
<mx:AdvancedDataGridColumn dataField="empLastName" headerText="Last Name" />
<mx:AdvancedDataGridColumn dataField="empFirstName" headerText="First Name" />
</mx:columns>
</mx:AdvancedDataGrid>
我想在几列不同的报告中使用相同的MXML文件。这4列对于所有报告都是通用的,但其中很少有一些额外的报告。我能够更改empList(网格的dataProvider),但我不确定如何为此代码添加额外的列,因此不会为每个报告显示所有内容。
基本上我想这样做,
<mx:AdvancedDataGrid id="adgID"
dataProvider="{empList}"
width="720" height="450"
defaultLeafIcon="{null}"
selectionColor="#B5B2B2" rollOverColor="#6AB9F7"
showEffect="{}">
<mx:columns >
<mx:AdvancedDataGridColumn dataField="empId" headerText="Employee ID"/>
<mx:AdvancedDataGridColumn dataField="dept" headerText="Department" />
<mx:AdvancedDataGridColumn dataField="empLastName" headerText="Last Name" />
<mx:AdvancedDataGridColumn dataField="empFirstName" headerText="First Name" />
<!------------------------ Need to add this part ------------------------>
if(reportType == 1) {
<mx:AdvancedDataGridColumn dataField="empDOB" headerText="DOB" />
}
if(reportType == 2) {
<mx:AdvancedDataGridColumn dataField="empSalary" headerText="Salary" />
}
<!------------------------ Need to add this part ------------------------>
</mx:columns>
</mx:AdvancedDataGrid>
我该怎么做?我们正在使用Flex 3.我对Flex有非常基本的了解。
感谢您的帮助。 - 安迪特
答案 0 :(得分:0)
有几种不同的方法可以做到这一点:
使用Flex 4: