Проблема Flex Itemrenderer с DropDown Control - PullRequest
1 голос
/ 29 октября 2010

Я хочу показать форматированный текст в раскрывающемся списке, для которого я использую следующий рендер.

<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx">
  <fx:Script>
  <![CDATA[
  import spark.utils.TextFlowUtil;
  ]]>
  </fx:Script>
  <s:TextArea textFlow="{TextFlowUtil.importFromXML(new XML(data))}"/>
</mx:HBox>

Средство визуализации правильно отображает HTML-текст в раскрывающемся списке, но в самой верхней опции (выбранный элемент) отображается весь тег HTML вместо того, что представляет тег. Я полностью потерян, любая помощь будет оценена.

Спасибо

1 Ответ

0 голосов
/ 29 октября 2010

Какой контроль вы используете?MX ComboBox или элемент управления Spark DropDownList?Или Spark ComboBox?

Поскольку ваш itemRenderer смешивает компоненты Halo и Spark, трудно сказать.

В MX ComboBox вы не можете управлять областью подсказок с помощью itemRenderer.Это должен быть простой текст.

В Spark ComboBox область подсказки представляет собой фактический ввод, который вы вводите.Ss такие не будет отображать HTMLText.

Я подозреваю, что элемент управления Spark DropDownList имеет те же ограничения, что и MX ComboBox, где приглашение не создается вашим itemRenderer.

Во всех случаях вам придется расширять компонент, если вы хотите сделать что-то еще.

При всем этом ваш itemRenderer не должен смешивать компоненты Halo и Spark.HBox лишний, в нем только один предмет.Итак, избавьтесь от этого и замените его Spark ItemRenderer.Вместо привязки вашего значения используйте событие dataChange.Обе эти вещи, как известно, увеличивают производительность.

Подробнее о создании Spark Renderers.

...