PropertyGrid в Adobe Flex? - PullRequest
       5

PropertyGrid в Adobe Flex?

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

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

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

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

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

Ответы [ 2 ]

0 голосов
/ 13 ноября 2010

Я сделал это, используя сетку данных с двумя столбцами, и этот подход прекрасно работает для меня:

                <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>
0 голосов
/ 03 ноября 2010

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

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

...