Может быть, следующий взлом поможет кому-то.
Я просто хотел удалить ролловер и выделение из заголовка сетки данных (flex 3).
Что я сделал:
1) Создать новый подкласс DataGridHeader и переопределить drawHeaderIndicator и drawSelectionIndicator
package
{
import flash.display.Sprite;
import mx.controls.dataGridClasses.DataGridHeader;
import mx.controls.listClasses.IListItemRenderer;
public class MyDataGridHeader extends DataGridHeader
{
public function MyDataGridHeader()
{
super();
}
override protected function drawHeaderIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void
{
}
override protected function drawSelectionIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void
{
}
}
}
2) Создайте новый подкласс DataGrid - скажем, MyDataGrid и в конструкторе сделайте следующее:
public function MyDataGrid()
{
super();
this.mx_internal::headerClass = MyDataGridHeader;
....
}
Это заставит DataGrid использовать ваш DataGridHeader.