0

有没有办法让 spark datagrid 单元格中的文本可选?我不想使单元格可编辑。

我尝试过扩展 DefaultGridItemRenderer 并在其上设置 selectable = true ,但这无济于事。

我正在使用 Flex sdk 4.9

4

2 回答 2

2

DefaultGridItemRenderer 使用 FTETextField 来显示文本,但 FTETextField 中的文本不能设置为可选择的。

而是使用 UITextFieldGridItemRenderer;这确实允许您设置 selectable=true。

最简单的方法是创建 UITextFieldGridItemRenderer 的子类,并在其构造函数中添加:

selectable = true;

然后将新类设置为数据网格的渲染器。

于 2013-02-19T16:55:22.157 回答
1

如果您不想创建自定义类只是为了让您的文本可选择,那么使用 ClassFactory 也可以。在 actionscript 函数中,使用 ClassFactory 创建 UITextFieldGridItemRenderer 的实例,通过属性设置“可选择”,并返回渲染器实例。要应用项目渲染器,您需要将该函数绑定到列或网格的“itemRenderer”属性。

这是一个简单的例子:

public function myRendererFactory():ClassFactory
    {
        var myRenderer:ClassFactory=new ClassFactory(UITextFieldGridItemRenderer);
        myRenderer.properties={selectable: true};
        return myRenderer;
    }
...
<s:GridColumn itemRenderer="{myRendererFactory()}"/>
...
于 2013-11-11T20:09:57.073 回答