/// <summary> /// Cards GridView CellValue Needed Event. /// </summary> private void CardsGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) { try { if (e.RowIndex > GridCards.Count - 1) { return; } switch (CardsGridView.Columns[e.ColumnIndex].Name) { case "IDColumn": e.Value = e.RowIndex + 1; break; case "EIDColumn": e.Value = String.Format("{0} - {1}", GridCards[e.RowIndex].WorkerId, GridCards[e.RowIndex].WorkerName); break; case "CardSnColumn": e.Value = GridCards[e.RowIndex].CardSn; if (!String.IsNullOrWhiteSpace(SelectedCardSn) && SelectedCardSn.Equals(e.Value)) { CardsGridView.ClearSelection(); CardsGridView.Rows[e.RowIndex].Selected = true; SelectedCardSn = null; } break; case "DepNameColumn": e.Value = String.Format("{0} - {1}", GridCards[e.RowIndex].DepId, GridCards[e.RowIndex].DepName); break; case "CardTypeColumn": e.Value = ComUtility.GetCardTypeText(GridCards[e.RowIndex].CardType); break; case "BeginTimeColumn": e.Value = Common.GetDateTimeString(GridCards[e.RowIndex].BeginTime); break; case "BeginReasonColumn": e.Value = GridCards[e.RowIndex].BeginReason; break; case "CommentColumn": e.Value = GridCards[e.RowIndex].Comment; break; case "EnabledColumn": e.Value = GridCards[e.RowIndex].Enabled ? "启用" : "禁用"; break; default: break; } } catch (Exception err) { Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.OrgCardManagerForm.CardsGridView.CellValueNeeded", err.Message, err.StackTrace); MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Cards GridView CellContent Click Event. /// </summary> private void CardsGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex == -1 || e.ColumnIndex == -1) { return; } var key = (String)CardsGridView.Rows[e.RowIndex].Cells["CardSnColumn"].Value; var obj = GridCards.Find(d => d.CardSn.Equals(key, StringComparison.CurrentCultureIgnoreCase)); if (obj == null) { MessageBox.Show("未找到相关数据项", "系统警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } switch (CardsGridView.Columns[e.ColumnIndex].Name) { case "DeleteColumn": if (MessageBox.Show(String.Format("卡片[{0} - {1},{2}]将被删除,您确定要删除吗?", obj.CardSn, obj.WorkerId, obj.WorkerName), "确认对话框", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.OK) { var result = Common.ShowWait(() => { CardEntity.DeleteCards(new List <CardInfo>() { obj }); }, default(String), "正在删除,请稍后...", default(Int32), default(Int32)); if (result == System.Windows.Forms.DialogResult.OK) { Cards.Remove(obj); GridCards.Remove(obj); CardsGridView.Rows.RemoveAt(e.RowIndex); Common.WriteLog(DateTime.Now, EnmMsgType.Cardout, Common.CurUser.UserName, "Delta.MPS.AccessSystem.OrgCardManagerForm.CardsGridView.CellContentClick", String.Format("删除卡片:[{0} - {1},{2}]", obj.CardSn, obj.WorkerId, obj.WorkerName), null); } } break; case "EditColumn": if (new SaveCardForm(EnmSaveBehavior.Edit, obj).ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { CardsGridView.InvalidateRow(e.RowIndex); } break; default: break; } } catch (Exception err) { Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.OrgCardManagerForm.CardsGridView.CellContentClick", err.Message, err.StackTrace); MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Save Cards. /// </summary> private void OKBtn_Click(object sender, EventArgs e) { try { if (CardsGridView.Rows.Count == 0) { Cards.Clear(); MessageBox.Show("无发卡记录", "系统警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ExistCards.Clear(); foreach (var c in Cards) { if (CardEntity.ExistCard(c.ID.CardSn)) { ExistCards[c.ID.CardSn] = c.ID; } } if (ExistCards.Count > 0) { BindCardsToGridView(); CardsGridView.ClearSelection(); MessageBox.Show("卡号已注册,请对红色标记的记录重新读卡。", "系统警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var result = Common.ShowWait(() => { CardEntity.SaveCards(Cards.Select(c => c.ID).ToList()); }, default(String), "正在保存,请稍后...", default(Int32), default(Int32)); if (result == DialogResult.OK) { foreach (var c in Cards) { Common.WriteLog(DateTime.Now, EnmMsgType.Cardin, Common.CurUser.UserName, "Delta.MPS.AccessSystem.BatchOrgCardsForm.OKBtn.Click", String.Format("新增卡片:[{0} - {1},{2}]", c.ID.CardSn, c.ID.WorkerId, c.ID.WorkerName), null); } MessageBox.Show("数据保存完成", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information); DialogResult = System.Windows.Forms.DialogResult.OK; } else { MessageBox.Show("数据保存失败", "系统警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception err) { Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.BatchOrgCardsForm.OKBtn.Click", err.Message, err.StackTrace); MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
protected void CardsGridView_PageIndexChanging(object sender, GridViewPageEventArgs e) { try { LoadCards(); CardsGridView.PageIndex = e.NewPageIndex; CardsGridView.DataBind(); } catch (Exception ex) { this.HandleException(ex); } }
private void scrollToSelected(object sender, RoutedEventArgs args) { CardsGridView.ScrollIntoView(CardsGridView.SelectedItem, ScrollIntoViewAlignment.Leading); }