public HoujinShisetsuFormController()
        {
            form           = new KaikeiSystemBody.views.HoujinShisetsuForm();
            gridController = new grid.DBPanelGridController <views.grid.HoujinShisetsuRow>(form.HoujinShisetsuGrid, true);

            form.HoujinDantaiRow.Column_UpdateValueAction += delegate(views.grid.AbstractPanelGridRow rowControl, string column, object value) {
                var row   = (rowControl as views.grid.AbstractDBGridRow).RowData;
                var table = row.Table;
                var db    = Context.KaikeiDatabase;

                if (table.SetColumnValue(row, column, value))
                {
                    table.Update(row);
                }
                else
                {
                    // ShowMsgAndChangeFocus(KaikeiSystemBody.Properties.Resources.MsgInvalidInput.Replace("%s", value.ToString()), "err", column);
                }
                (rowControl as views.grid.AbstractDBGridRow).SetRowData(row, true);    // 表示の更新
            };
            gridController.InitInsertedRow += delegate(models.db.Row row) {
                row.Table.SetColumnValue(row, "parent_id", 1);
                row.Table.SetColumnValue(row, "kubun_code", row.Table.GetMax("kubun_code") + 1);
            };
            gridController.RowUpdated += delegate(views.grid.HoujinShisetsuRow row) {
                Context.KaikeiDatabase.MTKaikeiKubun.UpdateCache();
                gridController.ResetMasterTableInfo();

                delayTimerController.SetDelayedProc(delegate() {
                    CheckParentKubunYosan(row.RowData);
                });
            };

            form.CloseButtonClicked += () => MainController.PopActivity();

            delayTimerController = new misc.DelayTimerController(form);
        }