DataGrid - problems with "hGridLines"

Hi everyone,

I’m experiencing some strange problem with DataGrid component.
When scrolling horizontally loaded data from xml file, the hGridLines don’t stretch till the end of the loaded data. Resizing any column fixes that problem, but that’s not a solution.

I tried flash cs3 and the problem is the same.

Anyone could help PLEASE.

PS Don’t get scared column names are in polish.

here’s AS (couldn’t upload fla - too big) xml attached

The component size is 435x505


import mx.controls.listclasses.DataProvider;

mygrid.columnNames = ["Nr", "Piętro", "Pow.", "Ogródek", "Balkon", "Pokoje", "Pom. gosp.", "Cena za mc park.", "Str. świata", "Czynsz", "Cena całkowita", "Cena za m2", "Status"];
mygrid.hScrollPolicy = "on";
mygrid.resizableColumns = true;
mygrid.sortableColumns = false;
mygrid.headerHeight = 30;
mygrid.rowHeight = 25;

mygrid.getColumnAt(0).width = 35;
mygrid.getColumnAt(1).width = 50;
mygrid.getColumnAt(2).width = 70;
mygrid.getColumnAt(3).width = 70;
mygrid.getColumnAt(4).width = 60;
mygrid.getColumnAt(5).width = 55;
mygrid.getColumnAt(6).width = 75;
mygrid.getColumnAt(7).width = 120;
mygrid.getColumnAt(8).width = 90;
mygrid.getColumnAt(9).width = 65;
mygrid.getColumnAt(10).width = 100;
mygrid.getColumnAt(11).width = 90;
mygrid.getColumnAt(12).width = 90;

//mygrid.setStyle("backgroundColor", 0xFF00AA);
//mygrid.setStyle("headerColor", 0xfb9700);
mygrid.setStyle("vGridLines", true);
mygrid.setStyle("hGridLines", true);
mygrid.setStyle("textAlign", "center");
mygrid.setStyle("color", "0x000000");
mygrid.setStyle("fontStyle", "Verdana");
mygrid.setStyle("fontSize", "11");
mygrid.setStyle("alternatingRowColors", [0xEFEFEF, 0xDDDDDD]);
mygrid.setStyle("rollOverColor", "0xF9B700");
mygrid.setStyle("selectionColor", "0xFFFF33");
mygrid.setStyle("selectionDuration", 500);



var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = loadXml;
xml.load("plany.xml");
//xml.load("plany.xml?ck="+new Date().getTime()); cache killer

var dp:Array = new Array(); /****DataProvider dla dataGrid ****/
var linki:Array = new Array(); /**** tablica z linkami do planów ****/

function loadXml(success:Boolean):Void {
    if (success) {

        var plansNode:XMLNode = xml.firstChild;
        var planNodes:Array = plansNode.childNodes;
        var planLength:Number = planNodes.length;
        
        /**** pobieranie linków do tablicy linki ****/
        for (var k:Number = 0; k<planLength; k++) {
            linki.push(planNodes[k].childNodes[0].childNodes[0].nodeValue);
        }
        
        for (var i:Number = 0; i<planLength; i++) {
            var planNode:XMLNode = planNodes*;
            var planNodeArray:Array = planNode.childNodes;
            var planNodeLength:Number = planNodeArray.length;

            var obj_xml:Object = new Object();

            for (var j:Number = 0; j<planNodeLength; j++) {
                var node:XMLNode = planNodeArray[j];
                
                switch (node.nodeName) {
            
                    case "number":
                    obj_xml["Nr"] = node.firstChild.nodeValue;
                    break;
                    
                    case "floor":
                    obj_xml["Pi&#281;tro"] = node.firstChild.nodeValue;
                    break;
                    
                    case "area":
                    obj_xml["Pow."] = node.firstChild.nodeValue;
                    break;
                    
                    case "garden":
                    obj_xml["Ogródek"] = node.firstChild.nodeValue;
                    break;
                    
                    case "balcony":
                    obj_xml["Balkon"] = node.firstChild.nodeValue;
                    break;
                    
                    case "rooms":
                    obj_xml["Pokoje"] = node.firstChild.nodeValue;
                    break;
                    
                    case "social":
                    obj_xml["Pom. gosp."] = node.firstChild.nodeValue;
                    break;
                    
                    case "parking":
                    obj_xml["Cena za mc park."] = node.firstChild.nodeValue;
                    break;
                    
                    case "direction":
                    obj_xml["Str. &#347;wiata"] = node.firstChild.nodeValue;
                    break;
                    
                    case "rent":
                    obj_xml["Czynsz"] = node.firstChild.nodeValue;
                    break;
                    
                    case "price":
                    obj_xml["Cena ca&#322;kowita"] = node.firstChild.nodeValue;
                    break;
                    
                    case "pricem":
                    obj_xml["Cena za m2"] = node.firstChild.nodeValue;
                    break;
                    
                    case "status":
                    obj_xml["Status"] = node.firstChild.nodeValue;
                    break;
                }
            }
            dp.push(obj_xml);
        }
        mygrid.dataProvider = dp;
    }
    /*if (xml.status == 0) {
        trace("XML was loaded and parsed successfully");
    } else {
        trace("XML was loaded successfully, but was unable to be parsed.");
    }*/
}

// listener dla linków w dataGrid
var mygridListener:Object = new Object();

mygridListener.cellPress = function(evt_obj:Object) {
     var cell:Number = evt_obj.itemIndex;
     getURL("plany/"+linki[cell],"_blank");
};

mygrid.addEventListener("cellPress", mygridListener);