Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   DataGridColumn headerRenderer reference (http://www.flasher.ru/forum/showthread.php?t=129278)

Borman2000 28.08.2009 15:40

DataGridColumn headerRenderer reference
 
Собственно сабж. Как получить reference на headerRenderer?

KPOT 31.08.2009 15:07

А откуда получить?
от itemRenderer или внешне...

Borman2000 31.08.2009 15:17

Цитата:

Сообщение от KPOT (Сообщение 847006)
А откуда получить?
от itemRenderer или внешне...

Из вне. Например, из класса, в котором находится ДатаГрид.

KPOT 31.08.2009 16:31

разширяем наш дата грид и добавляем в него вот такую функцию.

Код AS3:

<mx:Script>
        <![CDATA[
                import mx.controls.dataGridClasses.DataGridHeader;
                import mx.controls.listClasses.IListItemRenderer;
 
                use namespace mx_internal;
 
                public function getHeaderRendererAt(index : int) : IListItemRenderer
                {
                return IListItemRenderer(DataGridHeader(header).rendererArray[index]);
                }
 
                ]]>
</mx:Script>

К примеру мой рендерер выглядит вот так:

Код AS3:

<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml">
        <mx:Label id="headLabel" text="Title Test"/>
</mx:HBox>

И затем из вне получаем к примеру текст, нашего headLabel:

Код AS3:

private function onInit():void
{
Alert.show(""+(dataG.getHeaderRendererAt(0) as CustomDataGridHeaderrenderer).headLabel.text);
}


Borman2000 31.08.2009 17:25

KPOT, спасибо.
Попробую подобное для DataGridColumn.

KPOT 31.08.2009 17:35

А зачем?
Фактически ты передаешь индекс колонки, чей headerRenderer ты хочешь получить.

Borman2000 31.08.2009 18:15

Цитата:

Сообщение от KPOT (Сообщение 847057)
А зачем?
Фактически ты передаешь индекс колонки, чей headerRenderer ты хочешь получить.

Это я и имел в виду. Просто в твоем примере используется headerRenderer для DataGrid, а у меня для DataGridColumn. Теоретически в данном случае разницы никакой быть не должно, но практика часто расходится с теорией. :confused:

Borman2000 02.04.2010 14:37

Хозяйкам на заметку:
если у вас есть lockedColumns, то в дополнение к
Код AS3:

DataGridHeader(header).rendererArray

еще следует читать из
Код AS3:

DataGridHeader(lockedColumnHeader).rendererArray



Часовой пояс GMT +4, время: 23:22.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.