Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Сортировка в таблице (http://www.flasher.ru/forum/showthread.php?t=114510)

maa 31.07.2008 12:15

Сортировка в таблице
 
Мне нужно в таблице сделать сортировку каждого столбца как строчки без учета региста. По умолчанию сортирует как с строчки, но учитывает регистр. А мне нужно без учета регистра.
http://svby.at.tut.by/w1.jpg

Код:

  <mx:DataGrid id="users_table"  dataProvider="{new ArrayCollection()}"          variableRowHeight="true" width="100%" x="0" backgroundAlpha="0.5"          draggableColumns="true" selectable="true"  top="40" bottom="0"  > 
          <mx:columns>
             
                <mx:DataGridColumn dataField="id" visible="false" />
                <mx:DataGridColumn dataField="login" headerText="Логин" width="100" />
                <mx:DataGridColumn dataField="last" headerText="Фамилия" width="120" />
                <mx:DataGridColumn dataField="first" headerText="Имя" width="120" />
                <mx:DataGridColumn dataField="utype"  headerText="Категория" width="120" />               
                <mx:DataGridColumn dataField="grant_list" headerText="Список прав" />
               
           
               
            </mx:columns>   
        </mx:DataGrid>


Для этого задал параметры сортировки:
Код:

        var sort:Sort = new Sort();
                                sort.fields = [new SortField("login",true), new SortField("last",true), new SortField("first",true),new SortField("utype",true)];
                                  users_table.dataProvider.sort = sort;

При первом щелчке по любому столбцу все срабатывает. А потом когда щелкаю по другим столбцам перестаёт сортировать без учета региста. Похоже что автоматом перетирает new Sort().

Первый щелчок по второму столбцу:
http://svby.at.tut.by/w2.jpg

Второй щелчок по второму столбцу=> Сортировка изменилась:
http://svby.at.tut.by/w3.jpg

Как по простому сделать сортировку без учета регистра?

maa 01.08.2008 15:33

Вот код упрощённого приложения. Ну неужели нельзя сортировать без учета регистра. Привязка функции для каждого столбца мне не подходит потому что Много разных таблиц => много кода если для каждого столбца делать функцию.
Код:

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:local="*"
        horizontalAlign="center" verticalAlign="center" backgroundColor="#EdEdEd"
        width="100%" height="100%" layout="absolute"  creationComplete="{getInit()}"> 
             
         
          <mx:Script>
        <![CDATA[
       
            import mx.controls.Alert;       
            import mx.collections.Sort;
            import mx.collections.SortField;           
             
         
         
          //*********Загрузка данных*********************************
          private function getInit():void
          {                     
                         
                                var sort:Sort = new Sort();
                            sort.fields = [new SortField("login",true), new SortField("last",true), new SortField("first",true),new SortField("utype",true)];
                          users_table.dataProvider.sort = sort;
                               
          };
          //**********************************************************     
     
     
       
         
        ]]>
    </mx:Script>           
       
       
        <!-- метатег таблицы -->
        <mx:DataGrid id="users_table"   
            variableRowHeight="true" width="100%" x="0" backgroundAlpha="0.5"
                draggableColumns="true" selectable="true"  top="40" bottom="0" > 
          <mx:columns>
                <mx:DataGridColumn dataField="login" headerText="Логин" width="100" />
                <mx:DataGridColumn dataField="last" headerText="Фамилия" width="120" />
                <mx:DataGridColumn dataField="first" headerText="Имя" width="120" />
                             
            </mx:columns> 
         
                   
                   
            <mx:ArrayCollection>
                        <mx:Object>
                            <mx:login>aaa</mx:login>
                            <mx:last>11.99</mx:last>
                            <mx:first>Slanted and Enchanted</mx:first>
                        </mx:Object>
                        <mx:Object>
                            <mx:login>BBBB</mx:login>
                            <mx:last>11.99</mx:last>
                            <mx:first>Brighten the Corners</mx:first>           
                        </mx:Object>
                        <mx:Object>
                            <mx:login>ccc</mx:login>
                            <mx:last>11.99</mx:last>
                            <mx:first>Brighten the Corners</mx:first>           
                        </mx:Object>
      </mx:ArrayCollection> 
             
        </mx:DataGrid>               
                   
       
   
</mx:Application>



Часовой пояс GMT +4, время: 12:29.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.