エンティティの作成/読み取り/更新を処理できるように、一般的なフォームを作成したいと思います。エンティティを作成する場合、エンティティにはすべてのフィールドのサブセットのみが含まれる場合があります。エンティティを更新すると、異なるフィールドのサブセットが含まれる場合があります。エンティティを読み取るときは、どのフィールドも編集できません。Flex でそのようなフォームを設計した経験のある人はいますか? 前もって感謝します。
2 に答える
Rocket Frameworkをチェックしてください..きっと気に入るはずです..
winforms を自動化したいですか? CRUD だけでなく、あらゆるタイプの winform コントロールの作成に役立ちます。WinForm 用の Rocket フレームワーク (.net c# 4 を使用) は、.Net 用の「フォーム ベース」アプリケーション/コントロール/カスタム コントロールをシームレスに開発するための、簡単に利用できる汎用ライブラリのセットを提供します。
フレックス フォームの品質、特に検証の管理にも不満を感じていたので、独自のフォーム コントロールを作成しました。少しでたらめでバグが多いため、共有する準備ができていませんが、アイデアをカバーします。
- レイアウト部分とデータ部分に分け、キーで対応付けます。どちらも基本的に、必要なプロパティを含む AS3 オブジェクト/配列の組み合わせです。
- レイアウトで表示可能なすべての要素、必要なバリデータ、ビジュアル プロパティ、ラベルなどを記述します。レイアウト内のすべての要素は配列内のオブジェクトです。プライマリ アレイは、VBox を介して並べ替えられ、表示されます。ネストされた配列は、ネストされた HBox に表示されます (たとえば、ラジオ オプションに役立ちます)。
フォームのデータ部分では、初期値、「編集可能な」プロパティ、「モデル」プロパティ (コンボ ボックス用) などを設定できます。データ構造は、キーがレイアウト内の要素にマップされるオブジェクト ハッシュです。レイアウトからのエントリがデータ定義に存在しない場合、それは表示されません。これにより、表示したくないセクションを簡単に非表示にすることができます。
検証またはサーバー エラーを表示できるエラー セクションがあります。
すべてのデータをオブジェクト ハッシュに収集する収集関数があります。
バリデーターがいつトリガーされるかを制御するための検証機能があります。
編集不可のフィールドはラベルとして表示されます。
基本的に、私は独自の「フォーム」コントロールを実装しました。レイアウトの各エントリ (表示される場合) は、レイアウトが記述したタイプのカスタム「FormItem」コントロールになります。(「テキスト」、「コンボ」、「見出し」、...)
視覚的な例といくつかのコードなしで説明するのは難しいですが、それが基本的な考え方です。自分でコントロールする必要があると考えているあなたは正しい道を進んでいます。一般的なフォームにはあまりにも多くの手を握る必要があり、冗長なコードがたくさんあります。