public bool PostChanges(MerchantTribe.Commerce.Catalog.ProductInventory item)
        {
            bool process = false;
            Collection <ModificationControlBase> controls = new Collection <ModificationControlBase>();

            foreach (System.Web.UI.Control rowControl in this.InventoryModificationsPanel.Controls)
            {
                if (rowControl is HtmlTableRow)
                {
                    foreach (System.Web.UI.Control cellControl in rowControl.Controls)
                    {
                        if (cellControl is HtmlTableCell)
                        {
                            foreach (System.Web.UI.Control control in cellControl.Controls)
                            {
                                if (control is CheckBox)
                                {
                                    process = ((CheckBox)control).Checked;
                                }
                                if (process)
                                {
                                    if (control is ModificationControlBase)
                                    {
                                        controls.Add((ModificationControlBase)control);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            bool result = false;

            foreach (ModificationControlBase control in controls)
            {
                if (control is ModificationControl <int> )
                {
                    ModificationControl <int> integerControl = (ModificationControl <int>)control;
                    result = true;
                    MakeChanges(integerControl, item);
                }
                else if (control is ModificationControl <double> )
                {
                    ModificationControl <double> floatControl = (ModificationControl <double>)control;
                    result = true;
                    MakeChanges(floatControl, item);
                }
                else if (control is ModificationControl <decimal> )
                {
                    ModificationControl <decimal> monetaryControl = (ModificationControl <decimal>)control;
                    result = true;
                    MakeChanges(monetaryControl, item);
                }
            }
            return(result);
        }
 protected void MakeChanges(ModificationControl <int> control, MerchantTribe.Commerce.Catalog.ProductInventory item)
 {
     if (control.ID == "QuantityAvailableIntegerModifierField")
     {
         item.QuantityOnHand = control.ApplyChanges((int)item.QuantityOnHand);
     }
     else if (control.ID == "QuantityOutOfStockPointIntegerModifierField")
     {
         item.LowStockPoint = control.ApplyChanges((int)item.LowStockPoint);
     }
     else if (control.ID == "QuantityReserveIntegerModifierField")
     {
         item.QuantityReserved = control.ApplyChanges((int)item.QuantityReserved);
     }
     else
     {
         throw new ControlNotFoundException(control.ID);
     }
 }
 protected void MakeChanges(ModificationControl <decimal> control, MerchantTribe.Commerce.Catalog.ProductInventory item)
 {
     throw new ControlNotFoundException(control.ID);
 }