/// <summary> /// 列の合計をグリッドにセット /// </summary> private void SetColumnTotal() { // データテーブル作成 DataTable dt = new DataTable(); // グリッドの描画処理停止 frmMainSchedule.grdColumnTotal.SuspendLayout(); frmMainSchedule.grdColumnTotal.DataSource = null; // データテーブルのカラムヘッダを作成 dt.Columns.Add("NAME", Type.GetType("System.String")); for (int iDay = 1; iDay < frmMainSchedule.piDayCount + 1; iDay++) { dt.Columns.Add("DAY" + iDay.ToString(), Type.GetType("System.String")); } // 初期データをセット for (int iWorkKind = 0; iWorkKind < 3; iWorkKind++) { DataRow dr = dt.NewRow(); dr["NAME"] = clsCommonControl.GetWorkKindTotalName(iWorkKind); for (int iDay = 1; iDay < frmMainSchedule.piDayCount + 1; iDay++) { dr["DAY" + iDay.ToString()] = frmMainSchedule.adColumnTotalData[iDay - 1, iWorkKind]; } dt.Rows.Add(dr); } // グリッドにデータテーブルをセット frmMainSchedule.grdColumnTotal.DataSource = dt; // 列幅(勤務種類) frmMainSchedule.grdColumnTotal.Columns[0].Width = GRID_WIDTH_COLUMN_STAFF; // グリッドのオプション設定 for (int iDay = 1; iDay < frmMainSchedule.piDayCount + 1; iDay++) { //列幅 frmMainSchedule.grdColumnTotal.Columns[iDay].Width = GRID_WIDTH_COLUMN_DATA; //ソートモード frmMainSchedule.grdColumnTotal.Columns[iDay].SortMode = DataGridViewColumnSortMode.NotSortable; } // フォント変更 for (int iColumn = 0; iColumn < frmMainSchedule.grdColumnTotal.Columns.Count; iColumn++) { frmMainSchedule.grdColumnTotal.Columns[iColumn].DefaultCellStyle.Font = new Font("メイリオ", 9); } // グリッドの選択状態を解除 frmMainSchedule.grdColumnTotal.CurrentCell = null; // グリッドの描画処理停止 frmMainSchedule.grdColumnTotal.Columns[0].Frozen = true; frmMainSchedule.grdColumnTotal.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing; }