Как создать индивидуальный компонент? - PullRequest
0 голосов
/ 01 ноября 2010

Я хочу создать сетку данных, которая имеет 4 столбца: description, quantity, price, and line total.Итого по строке будет просто произведение количества на цену.Я хочу, чтобы последняя строка сетки была суммой всех итоговых строк.

Как я могу создать этот тип сетки?Я подумал об использовании средств визуализации элементов, но не могу понять, каким должен быть последний ряд для общего количества позиций.

Если мне нужно создать собственный компонент, я буду признателен за рекомендации по созданию пользовательских компонентов.Хотя у меня есть общее представление о том, как создавать пользовательские компоненты, я не обладаю достаточным контролем, как мне бы хотелось.Спасибо.

Ответы [ 2 ]

1 голос
/ 01 ноября 2010

Хотя вам определенно следует проверить ссылки, предоставленные www.Flextras.com, есть несколько способов обеспечить функциональность, к которой вы стремитесь:

Самым простым является labelFunction:

<DataGrid dataProvider="{dp}">
     <columns>
         <DataGridColumn labelFunction="sumTotals" />
     </columns>
 </DataGrid>

 private function sumTotals(item:Object,column:DataGridColumn):String {
     return Number(item.quantity * item.price).toString();
 }

Кроме того, вы можете создать свой собственный itemRenderer следующим образом:

  <!-- MyItemRenderer.mxml -->
 <mx:Label>
     <mx:Script>
         override public function set data(value:Object):void {
             super.data = value;
              this.label = Number(item.quantity * item.price).toString();
         }
     </mx:Script>
 </mx:Label>


 <!-- Your component -->
 <DataGrid dataProvider="{dp}">
     <columns>
         <DataGridColumn itemRenderer="MyItemRenderer"/>
     </columns>
 </DataGrid>
0 голосов
/ 01 ноября 2010

Flex DataGrid не может включать элементы, которых нет в dataProvider, поэтому добавление строки, содержащей общее количество всех позиций в DataGrid, нецелесообразно без расширения DataGrid.

Посмотрите эту документацию для получения информации о создании пользовательских компонентов.Также взгляните на эту серию * .Прямая ссылка на эпизод 1 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...