Exemple #1
0
        public static object Show(IWin32Window owner, string ColumnName, JTable FKTable, string FKColumnName, string currentValue)
        {
            frmFKTable frmFKTable = new frmFKTable();

            if (!FKTable.Loaded)
            {
                if (!MainForm.LoadOrScanJsonFile(FKTable))
                {
                    return(null);
                }
            }

            Var.LockDgvMain = true;

            frmFKTable.fkTable = FKTable;
            DataTable dt = FKTable.ToDataTable();

            frmFKTable.Text          = ColumnName;
            frmFKTable.keyColumnName = FKColumnName;
            frmFKTable.currentValue  = currentValue;
            frmFKTable.dgvMain.Columns.Clear();
            frmFKTable.dgvMain.DataSource = dt;
            frmFKTable.dgvMain.Columns[FKColumnName].HeaderCell.Style.Font =
                new Font(frmFKTable.Font, FontStyle.Bold);
            frmFKTable.dgvMain.Columns[FKColumnName].HeaderCell.Style.BackColor     =
                frmFKTable.dgvMain.Columns[FKColumnName].DefaultCellStyle.BackColor = Color.Azure;
            frmFKTable.dgvMain.ClearSelection();
            for (int i = 0; i < FKTable.Columns.Count; i++)
            {
                frmFKTable.dgvMain.Columns[i].Visible = FKTable.Columns[i].Display || FKTable.Columns[i].IsKey;
            }
            frmFKTable.dgvMain.Columns[FKColumnName].DisplayIndex = 0;
            Var.LockDgvMain = false;
            frmFKTable.ShowDialogOrCallEvent(owner);
            return(frmFKTable.Value);
        }