Esempio n. 1
0
        private void gridViewProduct_Click(object sender, EventArgs e)
      
            /*создать новую строку, указатель на нее в ReceiptDetailRowAdd для редактирования*/
       
        {
            if (this.gridViewProduct.IsValidRowHandle(this.gridViewProduct.FocusedRowHandle) & this.gridViewProduct.State == GridState.Normal & !this.gridViewProduct.IsFilterRow(this.gridViewProduct.FocusedRowHandle))
            {
                FormDialog _formDialog = new FormDialog();
                _formDialog.AcceptButton = null;
                _formDialog.Text = "Добавить стоку";

               MDataSet.ReceiptDetailRow sourceRow = ((this.receiptDetailBindingSource.AddNew() as DataRowView).Row as MDataSet.ReceiptDetailRow);
 
                int _idproduct = Convert.ToInt32(((this.productBindingSource.CurrencyManager.Current as DataRowView).Row as DataRow)["ID"]);

                 MDataSet.ProductRow productRow = this.mDataSet.Product.FindByID(_idproduct);

                 if (productRow==null)
                 {

                    



                      ((this.productBindingSource.CurrencyManager.Current as DataRowView).Row  as FullDataSet.ProductRow).SetModified();

                      this.mDataSet.Product.Merge(_productTable.GetChanges());

                     ((this.productBindingSource.CurrencyManager.Current as DataRowView).Row as FullDataSet.ProductRow).AcceptChanges();
              
                     productRow = this.mDataSet.Product.FindByID(_idproduct);


                    }

                if ((sourceRow != null)&(productRow!=null))
                {
                    ReceiptDetailRowAdd _receiptDetailRowAdd = new ReceiptDetailRowAdd(sourceRow, productRow);
                    _formDialog.panel.Controls.Add(_receiptDetailRowAdd);

                    if (DialogResult.OK == _formDialog.ShowDialog(this))
                    {
                        this.receiptDetailBindingSource.EndEdit();
                    }
                    else
                    {
                        this.receiptDetailBindingSource.CancelEdit();
                    }

                }
                
            }
        }
Esempio n. 2
0
        private void gridViewReceiptDetail_Click(object sender, EventArgs e)
        {
            if (this.gridViewReceiptDetail.IsValidRowHandle(this.gridViewReceiptDetail.FocusedRowHandle) & this.gridViewReceiptDetail.State == GridState.Normal & !this.gridViewReceiptDetail.IsFilterRow(this.gridViewReceiptDetail.FocusedRowHandle))
            {
                FormDialog _formDialog = new FormDialog();
                _formDialog.AcceptButton = null;
                _formDialog.Text = "Изменить стоку";
                MDataSet.ReceiptDetailRow sourceRow = ((this.receiptDetailBindingSource.CurrencyManager.Current as DataRowView).Row as MDataSet.ReceiptDetailRow);
                ReceiptDetailRowAdd _receiptDetailRowAdd = new ReceiptDetailRowAdd(sourceRow, (sourceRow.GetParentRow("Product_ReceiptDetail") as MDataSet.ProductRow));
                _formDialog.panel.Controls.Add(_receiptDetailRowAdd);

                if (DialogResult.OK == _formDialog.ShowDialog(this))
                {
                    this.receiptDetailBindingSource.EndEdit();
                }
                else
                {
                    this.receiptDetailBindingSource.CancelEdit();
                }
            }
        }