如何防止更改树选择?

时间:2011-03-16 07:16:20

标签: flex tree selection

我在Flex Application中有一棵树,其中一个项目被选中。

当用户点击另一个项目时,我想进行检查,并可能阻止更改选择。

我尝试捕获click事件并调用stopPropagation,还尝试使用stopPropogation进行itemClick,但两者都不会阻止selectedItem更改。

有什么想法吗?

编辑23 / Mar - 添加源代码。它实际上非常简单:

<mx:Tree id="navTree"
    labelField="name"
    dragEnabled="false"
    itemClick="navTree_itemClickHandler(event)"
    itemRenderer="views.components.TopologyCustomTreeItemRenderer"          
    width="100%" height="100%"/>

事件处理程序:

protected function navTree_itemClickHandler(event:ListEvent = null):void
{   
    if(navTree.selectedItem != null && event != null)
    {
        event.preventDefault();
        event.stopImmediatePropagation();
    }
}

选择第一个项目后,树不应允许更改选择。然而,选择仍在改变。

2 个答案:

答案 0 :(得分:1)

我认为您应该将preventDefault()stopPropagationstopImmediatePropagation()一起使用,或者两者都使用

答案 1 :(得分:1)

不是<mx:Tree selectable="false">你想做什么?