Flex 3 - динамические столбцы DataGrid, ItemRenderer, TextInput, как установить свойство «текст»? - PullRequest
0 голосов
/ 11 января 2011

Вот случай (Flex 3):
У меня есть,

  • DataGrid с динамическим числом столбцов;
  • Каждая ячейка как ItemRender;
  • Каждый ItemRenderer как TextInput;

Если количество столбцов останется равным, тогда текст свойства textInput в элементе визуализации будет <mx:textInput id="ti" text="{data.ColumName}"/>.
Но у меня есть динамическое число columnName!
Поэтому я не могу получить доступ text="{data."diferent columName"}"!
Любая помощь ??

С наилучшими пожеланиями

1 Ответ

0 голосов
/ 11 января 2011

Я нашел правильный способ доступа к различным именам столбцов для доступа к поставщику данных!
Itemrender mxml:

<mx:TextInput width="100%" height="100%" click="cellClickHandler(event)" xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
        <![CDATA[
            import mx.controls.dataGridClasses.DataGridListData;
            import mx.controls.listClasses.ListData;

            override public function set data(value:Object):void
            {
                if(value != null)
                {
                    super.data = value;
                    var dglistData:DataGridListData = listData as DataGridListData;
                    this.text = value[dglistData.dataField];
                }
            } 

            public function cellClickHandler(e:Event)
            {

            }
    ]]>
    </mx:Script>
</mx:TextInput> 
...