/// <summary> /// グリッドビュー行選択時処理 /// </summary> private void GridEnter() { string msgStr; fMode.rowIndex = dg.SelectedRows[0].Index; // 選択確認 msgStr = ""; msgStr += dg[0, fMode.rowIndex].Value.ToString() + ":" + dg[1, fMode.rowIndex].Value.ToString() + Environment.NewLine + Environment.NewLine; msgStr += "上記の" + msName + "が選択されました。よろしいですか?"; if (MessageBox.Show(msgStr, "選択", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.No) { return; } // 対象となるデータテーブルROWを取得します MTYSDataSet.勤怠記号Row sQuery = dts.勤怠記号.FindByID(dg[0, fMode.rowIndex].Value.ToString()); if (sQuery != null) { // 編集画面に表示 ShowData(sQuery); // モードステータスを「編集モード」にします fMode.Mode = global.FORM_EDITMODE; } else { MessageBox.Show(dg[0, fMode.rowIndex].Value.ToString() + "がキー不在です:データの読み込みに失敗しました", "データ取得エラー", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
/// ------------------------------------------------------- /// <summary> /// マスターの内容を画面に表示する </summary> /// <param name="sTemp"> /// マスターインスタンス</param> /// ------------------------------------------------------- private void ShowData(MTYSDataSet.勤怠記号Row s) { fMode.ID = s.ID; txtID.Text = s.ID; txtID.Enabled = false; txtName.Text = s.勤怠区分名称; cmbShu.SelectedIndex = s.出勤区分; cmbHonsha.SelectedIndex = s.本社; cmbShizuoka.SelectedIndex = s.静岡; cmbOosaka.SelectedIndex = s.大阪製造部; txtMemo.Text = s.備考; btnDel.Enabled = true; btnClear.Enabled = true; }
private void btnDel_Click(object sender, EventArgs e) { try { // 確認 if (MessageBox.Show("削除してよろしいですか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No) { return; } // 削除データ取得(エラー回避のためDataRowState.Deleted と DataRowState.Detachedは除外して抽出する) var d = dts.勤怠記号.Where(a => a.RowState != DataRowState.Deleted && a.RowState != DataRowState.Detached && a.ID == fMode.ID); // foreach用の配列を作成する var list = d.ToList(); // 削除 foreach (var it in list) { MTYSDataSet.勤怠記号Row dl = (MTYSDataSet.勤怠記号Row)dts.勤怠記号.Rows.Find(it.ID); dl.Delete(); } } catch (Exception ex) { MessageBox.Show("データの削除に失敗しました" + Environment.NewLine + ex.Message); } finally { // グリッドデータ再表示 GridViewShow(dg); // 画面データ消去 DispInitial(); } }
//登録データチェック private Boolean fDataCheck() { try { //登録モードのとき番号をチェック if (fMode.Mode == global.FORM_ADDMODE) { string str = this.txtID.Text; // 未入力またはスペースのみは不可 if ((this.txtID.Text).Trim().Length < 1) { this.txtID.Focus(); throw new Exception("コードを入力してください"); } //ゼロは不可 : 2014/06/23 0:半休あり //if (this.txtID.Text.ToString() == "0") //{ // this.txtID.Focus(); // throw new Exception("ゼロは登録できません"); //} //登録済みコードか調べる MTYSDataSet.勤怠記号Row r = dts.勤怠記号.FindByID(txtID.Text); if (r != null) { txtID.Focus(); throw new Exception("既に登録済みのコードです"); } } //名称チェック if (txtName.Text.Trim().Length < 1) { txtName.Focus(); throw new Exception(msName + "名を入力してください"); } // 出退勤区分 if (cmbShu.SelectedIndex == -1) { cmbShu.Focus(); throw new Exception("出退勤区分を選択してください"); } // 本社使用区分 if (cmbHonsha.SelectedIndex == -1) { cmbHonsha.Focus(); throw new Exception("本社使用有無を選択してください"); } // 静岡使用区分 if (cmbShizuoka.SelectedIndex == -1) { cmbShizuoka.Focus(); throw new Exception("静岡使用有無を選択してください"); } // 大阪使用区分 if (cmbOosaka.SelectedIndex == -1) { cmbOosaka.Focus(); throw new Exception("大阪使用有無を選択してください"); } return(true); } catch (Exception ex) { MessageBox.Show(ex.Message, msName + "保守", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return(false); } }