2011-01-20 6 views
0

高度なデータグリッドにグループ化されています。グループ化の中の項目では、項目をダブルクリックすると、その項目を編集できるポップアップが作成されます。私が抱えている問題は、グループのタイトルをダブルクリックすることができ、空白の情報でポップアップが有効になることです。これを防ぐにはどうしたらいいですか?ここ高度なDataGridグループのタイトルをダブルクリックするのを無効にするにはどうすればよいですか?

はplugList_itemDoubleClickHandler機能で処理されるMXMLコード

<mx:AdvancedDataGrid id="plugList" designViewDataType="tree" width="100%" height="100%" 
     initialize="gc.refresh();" doubleClickEnabled="true" itemDoubleClick="plugList_itemDoubleClickHandler(event)"> 
     <mx:dataProvider> 
      <mx:GroupingCollection2 id="gc" source="{plugs}"> 
       <mx:grouping> 
        <mx:Grouping> 
         <mx:GroupingField name="traderTitle"/> 
        </mx:Grouping> 
       </mx:grouping> 
      </mx:GroupingCollection2> 
     </mx:dataProvider> 
     <mx:columns> 
      <mx:AdvancedDataGridColumn headerText="Title" dataField="traderTitle"/> 
      <mx:AdvancedDataGridColumn headerText="Anchor" dataField="traderAnchor"/> 
      <mx:AdvancedDataGridColumn headerText="URL" dataField="url"/> 
      <mx:AdvancedDataGridColumn dataField="status" headerText="Status" width="75"/> 
     </mx:columns> 
    </mx:AdvancedDataGrid> 

答えて

0

あります。条件付きのステートメントを用意して、それを理解していないevent.targetを見てください。デバッグモードでは、見ることができる項目とヘッダーの違いを見ることができます。そのヘッダであれば、ポップアップを表示しないでください

1

event targetは1行ではなく、データグリッドコンポーネント全体です。このオブジェクトは使用できません。 selectionModeプロパティがsingleRow(デフォルト)に設定されている場合は、selectedItemプロパティを使用してターゲット行をポイントできます。 次に、父のノードと単純な葉を区別するためのchildrenプロパティの存在を確認できます。

protected function plugList_itemDoubleClickHandler(event:ListEvent):void 
{ 
    if(((Object)(event.target.selectedItem)).hasOwnProperty('children')){ 
     trace('not a leaf'); 
    }else{ 
     Alert.show("Selected "+event.target.selectedItem.desc); 
    } 
} 

ダヴィデ

この

は、単純なDoubleClickのリスナー関数の例であります
関連する問題