///--------------------------------------------------------- /// <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を取得します ryowaDataSet.M_社員Row sQuery = dts.M_社員.FindByID(int.Parse(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(ryowaDataSet.M_社員Row s) { fMode.ID = s.ID.ToString(); txtCode.Text = s.ID.ToString(); txtCode.Enabled = false; txtName.Text = s.氏名; txtFuri.Text = s.フリガナ; txtSzCode.Text = s.所属コード.ToString(); txtSzName.Text = s.所属名; txtJinTanka.Text = s.人件費単価.ToString(); cmbZan.SelectedIndex = s.残業有無; txtTooshiTanka.Text = s.通し勤務単価.ToString(); txtKihon10.Text = s.基本給10.ToString(); txtPass.Text = s.パスワード; cmbSysKbn.SelectedIndex = s.システムユーザー区分; cmbKintaiEdit.SelectedIndex = s.アカウント権限; txtBikou.Text = s.備考; if (s.Is走行起点Null()) { txtKm.Text = "0"; } else { txtKm.Text = s.走行起点.ToString(); } if (s.Is走行起点日付Null() || s.走行起点日付 == string.Empty) { dtKiten.Checked = false; } else { dtKiten.Value = DateTime.Parse(s.走行起点日付); dtKiten.Checked = true; // 2018/09/25 } if (s.Is退職年月日Null() || s.退職年月日 == string.Empty) { dtTaishoku.Checked = false; } else { dtTaishoku.Value = DateTime.Parse(s.退職年月日); } cmbGenbateate.SelectedIndex = s.現場手当有無; // 2018/09/03 txtKoteiZan.Text = s.固定残業時間.ToString(); // 2018/09/03 linkLabel2.Enabled = true; linkLabel3.Enabled = true; }
private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { try { // 確認 if (MessageBox.Show("削除してよろしいですか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No) { return; } // 削除データ取得(エラー回避のためDataRowState.Deleted と DataRowState.Detachedは除外して抽出する) var d = dts.M_社員.Where(a => a.RowState != DataRowState.Deleted && a.RowState != DataRowState.Detached && a.ID == int.Parse(fMode.ID)); // foreach用の配列を作成する var list = d.ToList(); // 削除 foreach (var it in list) { ryowaDataSet.M_社員Row dl = (ryowaDataSet.M_社員Row)dts.M_社員.Rows.Find(it.ID); dl.Delete(); } } catch (Exception ex) { MessageBox.Show("データの削除に失敗しました" + Environment.NewLine + ex.Message); } finally { // 削除をコミット adp.Update(dts.M_社員); // データテーブルにデータを読み込む adp.Fill(dts.M_社員); // 画面データ消去 DispInitial(); // グリッド表示 GridViewShow(dg, txtsName.Text); } }