Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex Flex spark数据网格和字包装_Apache Flex_User Interface_Datagrid_Flex4_Word Wrap - Fatal编程技术网

Apache flex Flex spark数据网格和字包装

Apache flex Flex spark数据网格和字包装,apache-flex,user-interface,datagrid,flex4,word-wrap,Apache Flex,User Interface,Datagrid,Flex4,Word Wrap,我希望有一个spark datagrid,在相关的地方对所有行进行Wordwrapp。此时,单元格的宽度似乎取决于第一行的内容,随后的行被字包装。例如: 一,_ 如果第1列有第一行 abcde fghij 还有第二排 abcde fghij klmnop 第二行将被单词包装 二,_ 如果第1列有第一行 abcde fghij klmnop 还有第二排 abcde fghij 不需要换行,第1列是abcde fghij klmnop的宽度 我想要的是有一个适合容器的datagrid,并在适当

我希望有一个spark datagrid,在相关的地方对所有行进行Wordwrapp。此时,单元格的宽度似乎取决于第一行的内容,随后的行被字包装。例如:


一,_ 如果第1列有第一行

abcde fghij

还有第二排 abcde fghij klmnop

第二行将被单词包装


二,_ 如果第1列有第一行

abcde fghij klmnop

还有第二排 abcde fghij

不需要换行,第1列是abcde fghij klmnop的宽度


我想要的是有一个适合容器的datagrid,并在适当的地方有行wordwrap

到目前为止,我的代码是

<fx:Script><![CDATA[
import mx.collections.ArrayCollection;
import mx.events.FlexEvent;

private function contentCreationCompleteHandler(event:FlexEvent):void {
    var dyna1:Object = { name: "John", description: "abcde fghij klmno pqrst uvwxyz abcde fghij klmno pqrst uvwxyz abcde fghij klmno pqrst uvwxyz "};
    var dyna2:Object = { name: "Richard", description: "abcde fghij klmno pqrst uvwxyz abcde fghij klmno pqrst uvwxyz " };
    var dyna3:Object = { name: "Peter", description: "abcde fghij klmno pqrst uvwxyz " };
    grid.dataProvider = new ArrayCollection([dyna2, dyna1, dyna3]);
}
]]></fx:Script>

<s:DataGrid id="grid" width="100%" height="100%" variableRowHeight="true">
<s:columns>
    <s:ArrayList>
        <s:GridColumn headerText="name" width = "100" dataField="name"/>
        <s:GridColumn headerText="description" dataField="description"/>
    </s:ArrayList>
</s:columns>
</s:DataGrid>

我指定datagrid的宽度为100%,容器的宽度为400。可以调整容器的大小,因此我希望描述能够填充可用空间。当应用程序打开时,会出现一个滚动条,整个datagrid的宽度超过400。我希望datagrid将保持在400,并相应地进行文字包装

如果移动对象添加到数据提供程序的顺序,则会得到不同的结果。我将variableRowHeight设置为true,以启用本篇优秀文章中详细介绍的单词包装

如何使datagrid动态调整到容器宽度的100%,并在所有行上进行换行?(不仅仅是第1行之后的行)


提前感谢

我也遇到了同样的问题,第一行的宽度被弄乱了,经过几个小时的反复研究,终于在一些博客上找到了修复第一行宽度的答案

基本上,您必须在datagrid上设置“typicalItem”,否则Spark datagrid将自动使用第一行来确定宽度:

DataGrid的typicalItem用于计算网格的初始宽度 每个未指定显式宽度的GridColumn

下面是一个指定typicalItem的DataGrid示例


...
有关更多信息,请查看以下链接:


我尝试将datagrid的起始行更改为,其中包括指定horizontalScrollPolicy,但这也不起作用。哇,非常感谢jnova。我刚刚又遇到了这个问题,感到很沮丧。我会查一下你的答案刚查完。谢谢!这确实帮助了meThis的工作,除非你不知道数据是什么。
<s:DataGrid id="dataGrid" requestedRowCount="5" verticalCenter="0" horizontalCenter="0">
    <s:typicalItem>
        <s:DataItem key="99999" name="Typical Item" price="123.45" call="false"/>
    </s:typicalItem>

    <s:ArrayCollection id="items">
        <s:DataItem key="1000" name="Abrasive" price="100.11" call="false"/>
        <s:DataItem key="1001" name="Brush" price="110.01" call="true"/>
        ...
    </s:ArrayCollection>
</s:DataGrid>