1. можно ли как-то сделать, чтобы колонки автоматически выравнивались по ширине.
Например, есть 3 колонки: ид, год, название. Если сделать таблицу во всю ширину, то ширина колонок будет поровну разделена, т.е. по 33%. для ид такое широкое поле не нужно, а для названия нужно. В этом случае (если название явно не влезает и обрезается, а для поля ид еще куча места) что-то можно сделать? Или только явное указание width?
2. Указываю высоту для DataGrid 100%, но все-равно показывается стандартные 7 строк. Как-то можно чтобы высота таблицы автоматически изменялась по размеру окна?
3. Как можно сделать переход на другую страницу, кликнув по строке DataGrid? Возможно ли такое?
4. Использую itemRenderer="mx.controls.CheckBox". Можно ли как-то сделать так, чтобы чекбоксы не прилипали к левому краю? И можно ли выделять все строки, у которых установлен флажок чекбокса?
5. Вместо mx.controls.CheckBox указывал свой компонент, но при этом кнопка "выделить все" перестала работать. Можно ли как-то работу этих методов распространить на свои компоненты?

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%">
<s:layout>
<s:BasicLayout/>
</s:layout>
<fx:Declarations>
<!-- Разместить невизуальные элементы (например, службы или объекты значений) -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
// поставить все галочки
private function checkAll():void {
for (var i : Number=0; i<myDP.length; i++)
{
var o:Object = myDP.getItemAt(i);
o.check = true;
myDP.setItemAt(o, i);
}
// скрываем/показываем кнопки
uncheckall.visible = true;
checkall.visible = false;
}
// убрать все галочки
private function unCheckAll():void {
for (var i : Number=0; i<myDP.length; i++)
{
var o:Object = myDP.getItemAt(i);
o.check = false;
myDP.setItemAt(o, i);
}
// скрываем/показываем кнопки
uncheckall.visible = false;
checkall.visible = true;
}
[Bindable]
private var myDP:ArrayCollection = new ArrayCollection([
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"},
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"},
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"},
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"},
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"},
{check:false, region:"Ижевск", period:"2014 (4 квартал)", registration:"234-856-389485", company:"Аксион"},
{check:false, region:"Глазов", period:"2014 (2 квартал)", registration:"678-856-672346", company:"ЛВЗ"}
]);
]]>
</fx:Script>
<mx:Panel title="Выгрузка в файл XML" width="100%" height="100%" layout="absolute" horizontalAlign="left" verticalAlign="top">
<s:VGroup left="10" right="10" top="10" bottom="10">
<mx:HBox width="100%" paddingBottom="5" paddingTop="5">
<mx:Button label="Отметить все" id="checkall" click="checkAll()" includeInLayout="false"/>
<mx:Button label="Снять все" id="uncheckall" click="unCheckAll()" visible="false" />
</mx:HBox>
<mx:Box width="100%">
<mx:DataGrid dataProvider="{myDP}" width="100%">
<mx:columns>
<mx:DataGridColumn width="30" headerText="" dataField="check" itemRenderer="mx.controls.CheckBox"/>
<mx:DataGridColumn headerText="Район" dataField="region"/>
<mx:DataGridColumn headerText="Отчетный период" dataField="period"/>
<mx:DataGridColumn headerText="Регистрационный номер" dataField="registration"/>
<mx:DataGridColumn headerText="Наименование" dataField="company"/>
</mx:columns>
</mx:DataGrid>
</mx:Box>
</s:VGroup>
</mx:Panel>
</s:Group>