示例#1
0
        /// <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);
            }
        }
示例#2
0
        /// <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);
            }
        }
示例#3
0
        /// <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);
            }
        }
示例#5
0
 private void scrollToSelected(object sender, RoutedEventArgs args)
 {
     CardsGridView.ScrollIntoView(CardsGridView.SelectedItem, ScrollIntoViewAlignment.Leading);
 }