Пример #1
0
        private void txtCustomerID_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
        {
            //MessageBox.Show(e.KeyCode.ToString());
            #region Grid
            if (sender == Grid)
            {
                if (e.KeyCode == Keys.F3)
                {
                    deleteOrder();
                    Clear();
                    txtCardSetID.Enabled = true;
                    txtCardSetID.Focus();
                    return;
                }

                if (Grid.ActiveRow != null)
                {
                    if (e.KeyCode == Keys.Delete)
                    {
                        if (e.Shift && Grid.GetRow(ChildRow.Last) != Grid.ActiveRow)
                        {
                            Grid.ActiveRow.Delete();
                            MoveLast();
                            return;
                        }
                    }



                    switch (Grid.ActiveCell.Column.Key)
                    {
                    case "ProductID":
                    {
                        if (e.KeyCode == Keys.F2)
                        {
                            if (oProduct.View())
                            {
                                Grid.ActiveRow.Cells["ProductID"].Value   = oProduct.ID;
                                Grid.ActiveRow.Cells["Description"].Value = oProduct.Description;
                                Grid.ActiveRow.Cells["InvCode"].Value     = oProduct.InvCode;
                                Grid.ActiveRow.Cells["Price"].Value       = oProduct.Cost;
                                Grid.ActiveRow.Cells["Cases"].Activate();
                                Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                            }
                        }
                        if (e.KeyCode == Keys.Return)
                        {
                            if (!Contain(Grid.ActiveRow.Cells["ProductID"].Text))         //(!oCardSet.Items.Contains(Grid.ActiveRow.Cells["ProductID"].Text))
                            {
                                if (oProduct.Find(Grid.ActiveRow.Cells["ProductID"].Text))
                                {
                                    Grid.ActiveRow.Cells["ProductID"].Value   = oProduct.ID;
                                    Grid.ActiveRow.Cells["Description"].Value = oProduct.Description;
                                    Grid.ActiveRow.Cells["InvCode"].Value     = oProduct.InvCode;
                                    Grid.ActiveRow.Cells["Price"].Value       = oProduct.Cost;

                                    Grid.ActiveRow.Cells["Cases"].Activate();
                                    Grid.ActiveCell = Grid.ActiveRow.Cells["Cases"];
                                    Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                                }
                            }
                            else
                            {
                                MessageBox.Show("Item already entered");
                                Grid.ActiveCell = Grid.ActiveRow.Cells["ProductID"];
                                Grid.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode, false, false);
                                return;
                            }
                        }
                        if (e.KeyCode == Keys.Down)
                        {
                            Grid.PerformAction(UltraGridAction.NextRowByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["ProductID"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Up)
                        {
                            Grid.PerformAction(UltraGridAction.PrevRowByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["ProductID"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Right)
                        {
                            Grid.PerformAction(UltraGridAction.NextCellByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["Cases"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                    }

                    break;

                    case "Cases":

                        if (e.KeyCode == Keys.Return)
                        {
                            Grid.ActiveRow.Cells["Units"].Activate();
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Right)
                        {
                            Grid.PerformAction(UltraGridAction.NextCellByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["Units"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Left)
                        {
                            Grid.PerformAction(UltraGridAction.PrevCellByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["ProductID"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        break;

                    case "Units":
                        if (e.KeyCode == Keys.Return)
                        {
                            if (Grid.ActiveRow.Cells["ProductID"].Text != "" && !Contain(Grid.ActiveRow.Cells["ProductID"].Text))
                            {
                                if (Grid.GetRow(ChildRow.Last) == Grid.ActiveRow)
                                {
                                    // oCardSet.Items.AddEmpty();
                                    Grid.DataBind();
                                    MoveLast();
                                    //Grid.PerformAction(UltraGridAction.LastRowInBand, false, false);
                                }
                                else
                                {
                                    Grid.PerformAction(UltraGridAction.NextRowByTab, false, false);
                                    Grid.ActiveRow.Cells["ProductID"].Activate();
                                    Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                                }
                            }
                            else
                            {
                                Grid.ActiveRow.Cells["ProductID"].Activate();
                                Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                                Grid.ActiveRow.Cells["Units"].Value = 0;
                            }
                            return;
                        }
                        if (e.KeyCode == Keys.Return || e.KeyCode == Keys.Down || e.KeyCode == Keys.Tab)
                        {
                            Grid.PerformAction(UltraGridAction.NextRowByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["Units"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Up)
                        {
                            Grid.PerformAction(UltraGridAction.PrevRowByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["Units"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Left)
                        {
                            Grid.PerformAction(UltraGridAction.PrevCellByTab, false, false);
                            Grid.ActiveCell = Grid.ActiveRow.Cells["Cases"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        break;

                    default:
                    {
                        if (e.KeyCode == Keys.Return || e.KeyCode == Keys.Down || e.KeyCode == Keys.Tab)
                        {
                            Grid.PerformAction(UltraGridAction.NextRowByTab, false, false);
                            //Grid.ActiveCell = Grid.ActiveRow.Cells["Received"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                        if (e.KeyCode == Keys.Up)
                        {
                            Grid.PerformAction(UltraGridAction.PrevRowByTab, false, false);
                            //Grid.ActiveCell = Grid.ActiveRow.Cells["Received"];
                            Grid.PerformAction(UltraGridAction.EnterEditMode, false, false);
                        }
                    }
                    break;
                    }
                }
                return;
            }
            #endregion

            #region txtCardSetID
            if (sender == txtCardSetID)
            {
                if (e.KeyCode == Keys.F2)
                {
                    if (oCardSet.View())
                    {
                        txtCardSetID.Text  = oCardSet.CardsetID;
                        txtRangeStart.Text = oCardSet.RangeStart.ToString();
                        txtRangeEnd.Text   = oCardSet.RangeEnd.ToString();
                        txtAmount.Text     = oCardSet.TotalCredit.ToString();

                        Grid.DataSource = oCardSet.Items;
                        Grid.DataBind();
                        GridDetail.DataSource = GetDetail();
                        return;
                    }
                    else
                    {
                        Grid.Height = 529;
                    }

                    return;
                }
                if (e.KeyCode.ToString() == "Return" || e.KeyCode.ToString() == "Tab")
                {
                    if (txtCardSetID.Text.Trim() == "")
                    {
                        txtCardSetID.Clear();
                        txtCardSetID.Focus();
                        return;
                    }

                    if (oCardSet.Find(txtCardSetID.Text))
                    {
                        txtCardSetID.Text  = oCardSet.CardsetID;
                        txtRangeStart.Text = oCardSet.RangeStart.ToString();
                        txtRangeEnd.Text   = oCardSet.RangeEnd.ToString();
                        txtAmount.Text     = oCardSet.TotalCredit.ToString();

                        Grid.DataSource = oCardSet.Items;
                        // Grid.DataSource = oCardSet.Items.dtItems; //oCardSet.Items;
                        //  MoveLast();

                        txtCardSetID.Enabled = false;
                        return;
                    }
                    else
                    {
                        Grid.Height           = 529;
                        txtRangeStart.Enabled = true;
                        txtRangeStart.Focus();

                        return;
                    }
                }
            }
            #endregion

            #region txtRangeStart
            if (sender == txtRangeStart)
            {
                if (e.KeyCode.ToString() == "F2")
                {
                    if (oVendor.View())
                    {
                        this.txtRangeStart.Text = oVendor.ID;
                        if (!oVendor.Find(txtRangeStart.Text))
                        {
                            this.txtRangeStart.Focus();
                            return;
                        }

                        // oCardSet.Items.Load(CompanyID, txtCardSetID.Text);
                        // Grid.DataSource = oCardSet.Items.dtItems;
                        Grid.Focus();
                        return;
                    }
                }
                if (e.KeyCode.ToString() == "Return" || e.KeyCode.ToString() == "Tab")
                {
                    if (!oVendor.Find(txtRangeStart.Text))
                    {
                        this.txtRangeStart.Focus();
                        return;
                    }


                    // oCardSet.Items.Load(CompanyID, txtCardSetID.Text);
                    // Grid.DataSource = oCardSet.Items.dtItems;
                    Grid.Focus();
                    return;
                }
            }
            #endregion

            #region Default Option
            //Default option
            switch (e.KeyCode)
            {
            case Keys.Tab:
                if (!e.Shift)
                {
                    this.SelectNextControl(this.ActiveControl, true, true, true, true);
                }
                break;

            case Keys.Enter:
                this.SelectNextControl(this.ActiveControl, true, true, true, true);
                break;

            case Keys.Down:
                this.SelectNextControl(this.ActiveControl, true, true, true, true);
                break;

            case Keys.Up:
                this.SelectNextControl(this.ActiveControl, false, true, true, true);
                break;

            case Keys.F3:
                deleteOrder();
                break;

            case Keys.PageDown:
                break;

            case Keys.Delete:
                if (!e.Control)
                {
                    Grid.ActiveRow.Delete();
                }
                break;


                //case Keys.<some key>:
                // ......;
                // break;
            }
            #endregion
        }