共通ドキュメント

Form作成手順

InputForm実装クラスの作成

対象エンティティ(モデル)を配置する
エンティティのフィールド毎にInputElementを配置する
以下の抽象メソッドを実装
メソッド内容
SetDataSource
  • 受け取ったエンティティの保持
  • 全てのInputElementに対して値をセット
GetDataSource
  • 保持しているエンティティを返す
UpdateDataSource
  • 各InputElementからエンティティに値をセット
UpdateFields
  • 各InputElementに対してUpdateFieldを呼び出す
RenderView
  • 各InputElementに対してRenderを呼び出す
Validate
  • 各InputElementに対してValidate()を呼び出す
  • 検証結果を保持する

InputForm初期化コード作成

実フォーム内でInputForm実装クラスを初期化する
各InputElementを元になるコントロール、フィルター、検証、出力フォーマットなどで初期化

データアクセスコード作成

エンティティ保存コード
エンティティ読み込みコード
エンティティ削除コード

イベント処理作成

  • ■エンティティを外部から受け取る場合 (既存データ編集など)

    • アクセスオブジェクトからエンティティを受け取る
    • エンティティをInputFormにセットする
    • InputForm#RenderViewを呼び出す
    • エンティティ#IsModifiedをfalseに設定
  • ■エンティティを新規作成する場合 (新規データ追加など)

    • 新しいエンティティを生成する
    • 生成したエンティティをInputFormにセットする
    • InputForm#RenderViewを呼び出す
    • エンティティ#IsModifiedをfalseに設定
  • ■保存する場合

    • InputForm#Bindを呼び出す
    • InputFormの検証結果をチェックしてvalidならばInputFormからEntityを取り出して保存
    • InputFormの検証結果をチェックしてinvalidならばInputFormの各InputElementからエラー内容を取り出して表示
  • ■削除

    • エンティティを削除する
  • ■エンティティ#IsModifiedの設定

    • textbox#changeなどのイベントでIsModified= trueを設定
  • ■終了

    • エンティティ#IsModifiedをチェックしてtrueならば確認メッセージ表示
    • キャンセルされたら元に戻る

$Revision: 626 $