Как установить фабрику классов в стилях CSS?
У меня были проблемы с настройкой средства визуализации элементов Spark DataGrid в CSS, а затем я вспомнил, что компилятор создает для него фабрику классов.
Этот CSS не работает:
.myGrid {
itemRenderer: ClassReference("myItemRenderer");
}
но объявляя это встроенным, это делает:
<s:DataGrid itemRenderer="myItemRenderer" />
я нашел это setStyle
код и положить его в конструктор, но он не работает:
public function DataGrid() {
super();
setStyle("itemRenderer", new ClassFactory(myItemRenderer));
}
Я создал новый элемент управления и хочу использовать свой пользовательский рендерер по умолчанию. Таким образом, все стили установлены в defaults.css.
1 ответ
Решение
Я не могу установить фабрику классов в CSS для этого свойства. Я думаю, что свойство должно быть IFactory и определено как стиль.
Я могу установить средство визуализации элементов с помощью DataGrid. Я могу установить его в конструкторе, используя:
public function DataGrid() {
super();
itemRenderer = new ClassFactory(myItemRenderer);
}
или в скине DataGrid:
<s:Scroller id="scroller" minViewportInset="1" hasFocusableChildren="false" height="100%">
<!--- @private -->
<s:Grid id="grid" itemRenderer="MyGridItemRenderer">
</s:Grid>
</s:Scroller>