在网格项呈示器中显示/隐藏按钮

时间:2014-03-24 18:40:57

标签: flex actionscript flex4

我创建了一个自定义网格标题渲染器(GridItemRenderer的子类,spark)。在其中,我有一个我想隐藏或显示的按钮,基于来自网格外部的标志,而不是数据提供者的一部分。什么是最好的方式发送消息隐藏或显示它?我想这更像是一个设计问题。我显然不能使用像欧芹这样的IOC框架的消息,因为它是一个itemrenderer。创建单例来管理按钮的可见性状态是唯一的方法吗?我在想是否有 一种只是从皮肤上暴露按钮的方法,就像skinnablecontainer如何工作一样,从那里我可以更轻松地管理它。

2 个答案:

答案 0 :(得分:0)

在你的itemrenderer中...制作一个setter以显示按钮.......

[Bindable]
private var _isBtnVisible:Boolean;

public function set isBtnVisible(value:Boolean):void
{
_isBtnVisible = value;
}

<s:Button visible="{_isBtnVisible}" />

然后设置&#34; isBtnVisible&#34;来自datagrid的变量......

<s:DataGrid isBtnVisible={obj.visible} />

试试这个....希望它会帮助你......

答案 1 :(得分:0)

我使用的解决方法是使用单例。 hacky但对我有用。