Есть ли способ устранить границы на DataGridColumn во Flex? - PullRequest
0 голосов
/ 27 июля 2011

Я не вижу способа избавиться от определенных границ в DataGrid. Я хотел бы убрать боковую границу для двух моих столбцов, чтобы они выглядели как один столбец.

Я пытаюсь реализовать кнопку «очистить значение» в каждой из моих строк DataGrid. Мне удалось показать кнопку на пользовательском ItemRenderer из отдельного файла ActionScript, но я не был уверен, как заставить событие нажатия кнопки распространяться в файл mxml, где находится DataGrid. Мне было бы намного проще иметь дополнительный столбец без размера с кнопкой очистки.

Итак, еще раз: Есть ли способ изменить стиль границы или устранить определенные границы DataGridColumn?

1 Ответ

0 голосов
/ 04 августа 2011

Это отчасти хакерски, но я нашел решение, соответствующее моим потребностям. Я сделал прозрачную оболочку разделителя и использовал ее как verticalLockedSeparatorSkin, затем запер колонки до разделителя. Это сработало, потому что у меня не было горизонтальной прокрутки в моем DataGrid. Это позволяет, однако, исключить единственную границу между 2 столбцами (и это все, что мне нужно):

DataGrid mxml:

<mx:DataGrid lockedColumnCount="2" verticalLockedSeparatorSkin="ClearGridSeparatorSkin">
    <mx:columns>
        <mx:DataGridColumn />
        <mx:DataGridColumn />  <!-- this column is to the left of the clear separator -->
        <mx:DataGridColumn />  <!-- this column is on the right side of the separator -->
    </mx:columns>
</mx:DataGrid>

Скин разделителя (как класс ActionScript):

package com.example.ClearSeparator
{
    import mx.skins.ProgrammaticSkin;
    public class ClearGridSeparatorSkin extends ProgrammaticSkin
    {
        public function ClearGridSeparatorSkin()
        {
            this.alpha=0;
            this.width=1;
            super();
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...