public void LoadMethods(int selectedId)
        {
            CalculateShippingRates();
            SelectedId = selectedId;

            lvShippingRates.DataSource = _shippingRates;

            if (SelectedItem != null)
            {
                lvShippingRates.SelectedIndex = _shippingRates.FindIndex(p => p.MethodId == SelectedItem.MethodId && p.Id == SelectedId);
            }

            lvShippingRates.DataBind();

            divPickpoint.Visible = _shippingRates.Find(x => x.Ext != null && x.Ext.Type == ExtendedType.Pickpoint) != null;

            var multishipMethod = _shippingRates.Find(x => x.Type == ShippingType.Multiship);

            if (multishipMethod != null)
            {
                divMultiShip.Visible = true;

                var multiship = new Multiship(ShippingMethodService.GetShippingParams(multishipMethod.MethodId))
                {
                    ShoppingCart = ShoppingCart
                };

                var totalWeight = ShoppingCart.TotalShippingWeight;
                Weight = totalWeight != 0
                    ? totalWeight.ToString("F3").Replace(",", ".")
                    : multiship.WeightAvg.ToString("F3").Replace(",", ".");

                WidgetCode = multiship.WidgetCode;
                Cost       = (ShoppingCart.TotalPrice - ShoppingCart.TotalDiscount).ToString("F2").Replace(",", ".");

                foreach (var item in ShoppingCart)
                {
                    var sizeArr = item.Offer.Product.Size.Split('|');

                    var length = (int)Math.Ceiling(sizeArr[0].TryParseFloat() / 10);
                    var width  = (int)Math.Ceiling(sizeArr[1].TryParseFloat() / 10);
                    var height = (int)Math.Ceiling(sizeArr[2].TryParseFloat() / 10);

                    Dimensions += (Dimensions.IsNotEmpty() ? "," : "") +
                                  string.Format("[{0}, {1}, {2}, {3}]",
                                                length > 0 ? length : multiship.LengthAvg,
                                                width > 0 ? width : multiship.WidthAvg,
                                                height > 0 ? height : multiship.HeightAvg,
                                                item.Amount);
                }
            }
        }
        private void LoadMultiShip()
        {
            var multishipMethod = _shippingRates.Find(x => x.Type == ShippingType.Multiship);

            if (multishipMethod != null)
            {
                divMultiShip.Visible = true;

                var multiship = new Multiship(ShippingMethodService.GetShippingParams(multishipMethod.MethodId))
                {
                    ShoppingCart = ShoppingCart
                };

                var totalWeight = ShoppingCart.TotalShippingWeight;
                Weight = totalWeight != 0
                    ? totalWeight.ToString("F3").Replace(",", ".")
                    : multiship.WeightAvg.ToString("F3").Replace(",", ".");

                WidgetCode = multiship.WidgetCode;
                Cost       = ShoppingCart.TotalPrice.ToString("F2").Replace(",", ".");

                foreach (var item in ShoppingCart)
                {
                    var sizeArr = item.Offer.Product.Size.Split('|');

                    var length = sizeArr[0].TryParseInt() / 10;
                    var width  = sizeArr[1].TryParseInt() / 10;
                    var height = sizeArr[2].TryParseInt() / 10;

                    Dimensions += (Dimensions.IsNotEmpty() ? "," : "") +
                                  string.Format("[{0}, {1}, {2}, {3}]",
                                                length > 0 ? length : multiship.LengthAvg,
                                                width > 0 ? width : multiship.WidthAvg,
                                                height > 0 ? height : multiship.HeightAvg,
                                                item.Amount);
                }
            }
        }