*Short version:*
I have a non-visual component that I'm trying to declare in a repeater, but
it seems that MXML doesn't allow this. Is this true? How do you get around
this, create a visual component to wrap the non-visual component?
*Long version:*
I have an ActionScript non-visual component whose declaration looks like
this:
public class DetailPopup extends EventDispatcher implements IMXMLObject
I've used this successfully inside an inline, MXML item renderer, like this:
<mx:DataGridColumn>
<mx:itemRenderer>
<mx:Component>
<mx:VBox>
<!-- a bunch of other stuff, and then my: -->
<my:DetailPopUp/>
<mx:VBox>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
Now that I'm switching from a DataGrid to a Grid, the code ought to look
like this:
<mx:GridItem>
<mx:VBox>
<!-- a bunch of other stuff, and then my: -->
(X) <my:DetailPopUp/>
<mx:VBox>
</mx:GridItem>
..except that I'm getting an error, "Component declarations are not allowed
here. (Note: visual children must implement IUIComponent.)"
After trying out a bunch of scenarios, it looks like non-visual components
can only be declared in the outermost scope of a component or application.
Is this true? This is rather awkward, as I need a DetailPopUp for each
griditem.
Any tips would be very helpful!
Michael