我有一个AdvancedDataGrid,其中有两列包含项呈示器。这些项呈示器在各自的列中呈现链接按钮。我希望能够单击这些链接按钮而不触发AdvancedDataGrid的itemClick事件。关于如何实现这一目标的任何建议?
答案 0 :(得分:1)
我从未使用过AdvancedDataGrid,但我假设有一些原则。第一个是事件传播的行为。在网格处理事件之前,事件将由按钮处理。这意味着我们可以捕获并阻止事件到达DataGrid。下面是一个代码示例,演示了DataGrid渲染器如何在不触发其他行为的情况下使用Button。
CustomerRenderer...
<fx:Script>
<![CDATA[
protected function watchButtonClickHandler(event:MouseEvent):void
{
//the line below stops the event from
//propagating through the rest of the display
//list
event.stopImmediatePropagation();
//handle button click logic here
}
]]>
</fx:Script>
<s:Group width="100%" id="buttonGroup">
<s:layout>
<s:HorizontalLayout horizontalAlign="center" verticalAlign="middle"
paddingBottom="1" paddingLeft="1"
paddingRight="1" paddingTop="1" />
</s:layout>
<s:Button id="watchButton" width="98" label="{buttonLabel}"
click="watchButtonClickHandler(event)"/>
</s:Group>
....