Я создаю компонент и хочу предоставить свойство цвета, как это делают многие гибкие элементы управления. Допустим, у меня есть такой простой компонент, давайте назовем его foo_label:
<mx:Canvas>
<mx:Script>
[Bindable] public var color:uint;
</mx:Script>
<mx:Label text="foobar" color="{color}" />
</mx:Canvas>
, а затем добавьте компонент в другой файл mxml, что-то вроде:
<foo:foo_label color="red" />
Когда я компилирую, компилятор жалуется: не может разобрать значение типа uint из текста 'red'. Однако, если я использую простой ярлык, я могу сделать
<mx:Label text="foobar" color="red">
без проблем, а свойство color по-прежнему имеет тип uint.
У меня вопрос: как я могу предоставить публичное свойство, чтобы я мог контролировать цвет текста моих компонентов? Почему я могу использовать строку "red" в качестве поля uint для элементов управления mx, но не могу сделать то же самое в пользовательском компоненте, нужно ли мне делать что-то особенное?
Спасибо.