Мне очень нравится флекс-фреймворк.Вы определяете несколько состояний для своего элемента управления, а затем можете настроить дочерние элементы управления, чтобы они отображались только в определенных состояниях.Проверьте этот код:
<s:states>
<s:State name="signin"/>
<s:State name="register"/>
</s:states>
<mx:FormItem label="Last name:" includeIn="register" id="lastNameItem" alpha="0.0">
<s:TextInput id="lastName" width="220"/>
</mx:FormItem>
Теперь форма фамилии появится только на экране регистрации.Это было бы очень полезно, я думаю, в .NET, где вы используете страницу для просмотров, таких как обновление / вставка.Я рассматривал вопрос о расширении элемента Page для получения свойства состояний с использованием методов расширения и добавлении включения в элементы управления.Таким образом, я могу автоматически скрывать элементы управления на основе текущего представления во время рендеринга.
Что еще круче в Flex, так это то, что вы можете использовать различные обработчики / свойства в зависимости от текущего состояния.
<s:Button label="Sign in" label.register="Register" id="loginButton"
enabled="true" click.signin="signin()" click.register="register()"/>
Я уверен, что я мог бы реализовать и нечто подобное.
Как вы думаете, это хорошая идея?Или это просто добавляет уровень абстракции к фреймворку, который уже имеет плохое разделение интересов?