Flex DataGrid 删除标题鼠标悬停突出显示 [英] Flex DataGrid Remove Header MouseOver Highlighting
问题描述
我想删除鼠标悬停在 DataGrid 标题上时出现的突出显示.
I want to remove the highlight that occurs when mouse over occurs on the headers of a DataGrid.
推荐答案
也许以下 hack 会对某人有所帮助.我只是想从数据网格标题 (flex 3) 中删除翻转和选择.
Maybe the following hack will help someone. I simply wanted to remove the rollover and selection from datagrid header (flex 3).
我做了什么:
1) 创建一个新的 DataGridHeader 子类并覆盖 drawHeaderIndicator 和 drawSelectionIndicator
1) Create a new subclass of DataGridHeader and override drawHeaderIndicator and 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 并在构造函数中执行以下操作:
2) Create a new subclass of DataGrid - lets say MyDataGrid and in constructor do the following:
public function MyDataGrid()
{
super();
this.mx_internal::headerClass = MyDataGridHeader;
....
}
这将强制 DataGrid 使用您的 DataGridHeader.
This will force DataGrid to use your DataGridHeader.
这篇关于Flex DataGrid 删除标题鼠标悬停突出显示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!