2012-12-20 27 views
1

我是新手,需要flex和本論壇。我有一個datagrid顯示圖像在mx:VBox in itemrenderer,現在我需要允許用戶多選VBox。但是當我選擇一些項目時,更改VBox的背景顏色並滾動它自動選擇某些rendom項目並設置相同的背景顏色。我知道flex複用項目渲染器,我讀它here在數據網格中滾動時的選擇轉換

但我該如何防止我的選擇唯一的項目。下面是我的代碼

<mx:DataGrid id="dgPhoto" 
           variableRowHeight="true" 
           dataProvider="{StyleItemsArray}" 
           verticalGridLineColor="white" 
           verticalGridLines="true" 
           showHeaders="false" 
           width="100%" 
           height="100%" 
           allowMultipleSelection="true" 
           > 
        <mx:columns> 
         <mx:DataGridColumn width="250" headerText="Preview" dataField="img"> 
          <mx:itemRenderer> 
           <mx:Component> 
            <mx:VBox height="215" horizontalAlign="center" click="this.setStyle('backgroundColor', 'white')"> 
             <mx:Script> 
              <![CDATA[ 


              ]]> 
             </mx:Script> 

             <mx:HBox horizontalAlign="center" horizontalGap="0"> 
              <mx:Image brokenImageBorderSkin="{null}" brokenImageSkin="@Embed(source='../img/errorIcon231.png')" id="image1" width="180" source="{data.source}" horizontalAlign="right"></mx:Image> 
              <mx:VBox horizontalAlign="center" verticalGap="2">          
               <mx:Button click="{btnZoom_clickHandler(event, data.sourceHRES, data.label, data.IDMSFile)}" toolTip="Zoom" id="btnZoom" icon="@Embed(source='../img/zoom.png')" fillColors="#BB3030"/> 
               <mx:Button click="{btnDownload_clickHandler(event, data.IDMSFile)}" toolTip="Place this style" id="btnDownload" icon="@Embed(source='../img/Download.png')" fillColors="#BB3030"/> 

              </mx:VBox> 
             </mx:HBox> 
            </mx:VBox> 
           </mx:Component>       
          </mx:itemRenderer> 
         </mx:DataGridColumn> 
        </mx:columns> 
       </mx:DataGrid> 

回答

0

您應該儲存和處理,其中被傳遞到每個itemRenderer的「數據」項所選/未選中狀態。

或者您可以從itemrenderer引用網格,並檢查當前數據是否在選定的項目之間。

或者你可以擴展標準的grid itemrenderer而不是使用Box並覆蓋在選擇/取消選擇item時調用的方法。

但是,是否有任何特殊的需要使用舊的,越野車,剛性mx數據網格而不是火花?你真的需要自定義選擇指示而不是樣式標準選擇顏色嗎?

相關問題