2010-11-03 3 views
1

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

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

я нашел именно то, что я хочу прямо здесь: http://www.cnblogs.com/janyou/archive/2009/07/28/1532919.html

Хотя эта страница на китайском, нет записи исходного кода или где этот компонент пришел, и т.д. Я не могу также найти другие решения по в Интернете (хотя, возможно, мои условия поиска неверны, потому что я не совсем уверен, как их искать).

ответ

-1

Конечно, это просто элемент управления List с визуализатором элемента, создающим правильное управление на основе любых данных ... т. Е. Если данные представляют собой массив, покажите в выпадающем списке, если это числовое шоу в шаге, если его текст отображается в TextInput.

Этого должно быть очень легко достичь.

+0

список или DataGrid? Кроме того, как можно создавать категории? Я не blieve, это стандартное поведение элементов управления List. – pbean

+0

Список. Я думаю, что это вполне выполнимо, если взглянуть на некоторые вещи, которые Алекс Харуи сделал в прошлом. Это действительно другой пункт. –

0

я сделал это с помощью DataGrid с двумя колоннами, и этот подход отлично работает для меня:

   <mx:columns> 
        <mx:DataGridColumn dataField="parameter" width="110" resizable="false"> 
         <mx:itemRenderer> 
          <mx:Component> 
           <mx:Label truncateToFit="true" fontWeight="bold" /> 
          </mx:Component> 
         </mx:itemRenderer> 
        </mx:DataGridColumn> 
        <mx:DataGridColumn dataField="value"> 
         <mx:itemRenderer> 
          <mx:Component> 
           <mx:HBox width="100%" height="100%" horizontalScrollPolicy="off" verticalScrollPolicy="off" 
            currentState="{(data.parameterType) == 'bool' ? 'checkboxState' : 'baseState'}"> 
            <mx:states> 
             <mx:State name="baseState"> 
              <mx:AddChild> 
               <mx:Label truncateToFit="true" text="{data.value}" paddingLeft="2" /> 
              </mx:AddChild> 
             </mx:State> 
             <mx:State name="chbState"> 
              <mx:AddChild> 
               <mx:CheckBox selected="{data.value &amp;&amp; parseInt(data.value)}" paddingLeft="5" /> 
              </mx:AddChild> 
             </mx:State> 
            </mx:states> 
           </mx:HBox> 
          </mx:Component> 
         </mx:itemRenderer> 
        </mx:DataGridColumn> 
       </mx:columns>