【问题标题】:AdvancedDataGrid Flex - Row not getting added under correct columnAdvancedDataGrid Flex - 未在正确的列下添加行
【发布时间】:2011-09-23 16:40:43
【问题描述】:

我正在动态添加行,但它们似乎没有放在正确的列下。我的所有标题都在“headerArray”中,我需要添加的数据在字符串“item”中。

//create an item to work with
var chartItem:Object = new Object();
for( var j:int = 0; j < columnResult.length ; j++ ) 
{

    var item:String = removeformat(removetd(columnResult[j]));
    //grab the header (this is which column the value will be added
    var head:String = headerArray[j];
    //set the value to header (pair)
    chartItem[head] = item;
}
//add the chartItem (row) to the main collection
arr.addItem(chartItem);
tableCollection = arr;

它正在正确获取所有标题并设置 chartItem(通过调试器检查)。当它到达一行(从 html 构建),其中有一个项目只有某些列的值时,它不会在右列下添加信息,它只是从左到右并将其添加到下一个。

这种行为有点奇怪,因为 chartItem 中显然有正确的标题值和对应的项目值,但就像我说的那样,它们最终不会出现在右列下。

tableCollection 稍后被设置为网格的数据提供者(此后未修改)

【问题讨论】:

  • 看起来像一个错误,但是如果没有更多代码可以查看,这很难调试。有什么办法可以粘贴更多代码?你的“removeFormat”和“removetd”函数是做什么的?
  • 感谢您的评论,我想我已经解决了,但我还不能发布解决方案,我得等几个小时。我会发上来让大家看看。它涉及从我要添加的项目中获取 colspan 属性,然后将该 colspan 添加到所有 NEXT 行中,有效地将它们推到那个数量

标签: apache-flex actionscript-3 dynamic datagrid advanceddatagrid


【解决方案1】:
var chartItem:Object = new Object();
var span:int = 0;
for( var j:int = 0; j < columnResult.length ; j++ ) 
{
    var colSpan:int = this.getColSpan(columnResult[j]);         
    var item:String = removeformat(removetd(columnResult[j]));
    //grab the header (this is which column the value will be added
    var head:String;
    if (colSpan >1){
        head = headerArray[j];
        span = colSpan;
    } else {
        if (span == 0){
            head = headerArray[j];
        } else {
            head = headerArray[j+span-1]
        }
    }
    //set the value to header (pair)
    chartItem[head] = item;
}
//add the chartItem (row) to the main collection
arr.addItem(chartItem);

如果我读取该行的 span 属性,我将 NEXT 行设置为 column+previous colspan。然后所有行都正确排列。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-08
    • 2010-12-15
    • 2011-12-25
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多