2013-12-23 30 views
0

阅读所有我能找到我采取了以下sortCompareFunction主题后...Flash Builder中不区分大小写的排序与AdvancedDatagrid头点击

private function value_sortCompareFunc(itemA:Object, itemB:Object):int { 
    return ObjectUtil.stringCompare(itemA.value, itemB.value, true); 
} 

在DataGrid加载数据源已排序(不区分大小写)由后端数据库如下。

Ababa, Meaghan 
abadilla, Athena 
Adams, AJ Jordan 
.... 
.... 
Lin, Jia 
etc... 

此时排序很好,不区分大小写。

但是,当用户单击此列的标题时,我会收到。

Lin, Jia 
Ababa, Meaghan 
abadilla, Athena 
Adams, AJ Jordan 
etc... 

除了第一个名字,其余的似乎是正确排序的。难道我做错了什么?这是一个错误?

感谢,

约翰

Datgrid代码(我还没有把sortCompareFunction设置与其他α列还)....

<mx:AdvancedDataGrid id="studentsAdvDG" x="11" y="100" width="754" height="308"change="{isOneStudentSelected()}" 
    dataProvider="{studentsAllforDG}" designViewDataType="tree" 
    doubleClick="{studentsDG_doubleClickHandler(event)}" 
    doubleClickEnabled="true 
    horizontalGridLineColor="#CDCBCB" horizontalGridLines="true" 
    selectionColor="#A5C5DA" selectionMode="multipleRows" 
    styleFunction="studentsAdvDGStyleFunc" textAlign="left" 
    useRollOver="false" variableRowHeight="true"> 
    <mx:columns> 
     <mx:AdvancedDataGridColumn width="210" dataField="student"headerText="Student" textAlign="left" 
        sortCompareFunction="value_sortCompareFunc"/> 
     <mx:AdvancedDataGridColumn width="40" dataField="projectID"headerText="ID"/> 
     <mx:AdvancedDataGridColumn visible="{registrarType != 'SchoolCoordinator'}" width="169" dataField="studentSchool" headerText="School"/> 
     <mx:AdvancedDataGridColumn visible="{registrarType == 'SchoolCoordinator' || showTeacherButton.label == 'Show Contact'}" width="169" dataField="teacher" headerText="Teacher"/> 
     <mx:AdvancedDataGridColumn visible="{showTeacherButton.label == 'Show Teacher'}" width="185" dataField="studentContact" headerText="Contact"/> 
     <mx:AdvancedDataGridColumn width="65" dataField="studentPackageStatus" headerText="Status"/> 
     <mx:AdvancedDataGridColumn dataField="studentUploadDate" headerText="Upload"/> 
     <mx:AdvancedDataGridColumn visible="false" dataField="studentEmail" headerText="studentEmail"/> 
     <mx:AdvancedDataGridColumn visible="false" dataField="studentID" headerText="studentID"/> 
     <mx:AdvancedDataGridColumn visible="false" dataField="studentPackageDirty" headerText="studentPackageDirty"/> 
     <mx:AdvancedDataGridColumn visible="false" dataField="studentPW" headerText="studentPW"/> 
     <mx:AdvancedDataGridColumn visible="false" dataField="studentNeedsvalidation" headerText="studentNeedsvalidation"/> 
    </mx:columns> 
</mx:AdvancedDataGrid> 

回答

0

你可以写在指定的列为sortable = false。然后,如果您点击标题,则不会有任何影响。请参阅下面的答案

<mx:AdvancedDataGrid id="myADG" width="100%" height="100%" dataProvider="{theModel.quiz_member_list}" 
        > 
    <mx:columns> 
     <mx:AdvancedDataGridColumn headerText="S.No" dataField="sNo" width="55" sortable="false" /> 
     <mx:AdvancedDataGridColumn headerText="Name" dataField="username" sortable="false" /> 
    </mx:columns> 
    </mx:AdvancedDataGrid> 
+0

但我确实希望在单击标题时对dg进行排序。我只是希望它不区分大小写。我在答案中错过了什么?问题是第一行出现故障。 – user278859

相关问题