void ProductButton_Click(object sender, EventArgs e) { Button ProductButton = sender as Button; FoodRepository _DataAccess = new FoodRepository(); int ProductID = Convert.ToInt32(ProductButton.Tag); Food ProductDetails = _DataAccess.RetreiveProductDetails(ProductID); if (CheckProductAlreadyAdded(ProductID)) { // MessageBox.Show("Product Alraedy Exists in Datagrid view at Index : " + RowIndex); int Quantity = Convert.ToInt32(ProductsGridView.Rows[RowIndex].Cells["ProductQuantityColumn"].Value); decimal Price = Convert.ToInt32(ProductsGridView.Rows[RowIndex].Cells["ProductPriceColumn"].Value); Quantity++; /////////////<Do thisssss...... Important.. Have decimal part in the total price> double TotalPrice = Convert.ToDouble(Quantity * Price); ProductsGridView.Rows[RowIndex].Cells["ProductQuantityColumn"].Value = Quantity; ProductsGridView.Rows[RowIndex].Cells["TotalPriceColumn"].Value = TotalPrice; TotalBillBox.Text = CalculateTotalBill(ProductsGridView).ToString(); } else { ProductsGridView.Rows.Add(ProductID, ProductDetails.FName, ProductDetails.FPrice, 1, ProductDetails.FPrice * 1); TotalBillBox.Text = CalculateTotalBill(ProductsGridView).ToString(); } }
private void ProductsGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex >= 0) { if (ProductsGridView.Columns[e.ColumnIndex].Name == "DeleteProductColumn") { if (MessageBox.Show("Are You Sure You Want to Delete this Product\nfrom Database", "Warning", MessageBoxButtons.YesNo) == DialogResult.Yes) { int ProductID = Convert.ToInt32(ProductsGridView.Rows[e.RowIndex].Cells["ProductIDColumn"].Value); FoodRepository _DataAccess = new FoodRepository(); if (_DataAccess.DeleteProduct(ProductID)) { ProductsGridView.Rows.RemoveAt(e.RowIndex); } else if (!_DataAccess.DeleteProduct(ProductID)) { MessageBox.Show("Product Not Deleted"); } } } else if (ProductsGridView.Columns[e.ColumnIndex].Name == "EditProductColumn") { int ProductID = Convert.ToInt32(ProductsGridView.Rows[e.RowIndex].Cells["ProductIDColumn"].Value); string ProductName = ProductsGridView.Rows[e.RowIndex].Cells["ProductNameColumn"].Value.ToString(); decimal ProductPrice = Convert.ToDecimal(ProductsGridView.Rows[e.RowIndex].Cells["ProductPriceColumn"].Value.ToString()); string ProductCategory = ProductsGridView.Rows[e.RowIndex].Cells["ProductCategoryColumn"].Value.ToString(); string ProductDescription = ProductsGridView.Rows[e.RowIndex].Cells["ProductDescriptionColumn"].Value.ToString(); byte[] ProductPicture = (byte[])ProductsGridView.Rows[e.RowIndex].Cells["ProductImageColumn"].Value; UpdateProucts UpdateProductForm = new UpdateProucts(ProductID, ProductName, ProductPrice, ProductCategory, ProductDescription, ProductPicture); if (UpdateProductForm.ShowDialog() == DialogResult.OK) { FoodRepository _DataAccess = new FoodRepository(); Food UpdatedProductDetail = _DataAccess.RetreiveProductDetails(ProductID); ProductsGridView.Rows[e.RowIndex].Cells["ProductNameColumn"].Value = UpdatedProductDetail.FName; ProductsGridView.Rows[e.RowIndex].Cells["ProductPriceColumn"].Value = UpdatedProductDetail.FPrice; ProductsGridView.Rows[e.RowIndex].Cells["ProductCategoryColumn"].Value = UpdatedProductDetail.FCategory; ProductsGridView.Rows[e.RowIndex].Cells["ProductDescriptionColumn"].Value = UpdatedProductDetail.FDescription; ProductsGridView.Rows[e.RowIndex].Cells["ProductImageColumn"].Value = UpdatedProductDetail.FPicture; } } } }