protected void uxProductKitDataList_ItemDataBound(object sender, DataListItemEventArgs e)
    {
        Components_ProductKitItemDetails details =
            (Components_ProductKitItemDetails)e.Item.FindControl("uxProductKitItemDetails");

        details.IsDynamicPrice = IsDynamicPrice;
        details.Culture        = Culture;
        details.PopulateControls();
    }
    public bool IsValidInput(int mainQuantity)
    {
        bool result = true;

        foreach (DataListItem item in uxOptionDataList.Items)
        {
            Components_ProductKitItemDetails optionItemDetails =
                (Components_ProductKitItemDetails)item.FindControl("uxProductKitItemDetails");
            if (!optionItemDetails.IsValidInput(mainQuantity))
            {
                result = false;
            }
        }
        return(result);
    }
    public ProductKitItemValueCollection GetSelectedProductKitItems()
    {
        // loop for each option in datalist
        // get selected option for each option
        //string[] result = new string[uxOptionDataList.Items.Count];
        ProductKitItemValueCollection itemSelected = new ProductKitItemValueCollection();

        for (int i = 0; i < uxOptionDataList.Items.Count; i++)
        {
            Components_ProductKitItemDetails details =
                (Components_ProductKitItemDetails)uxOptionDataList.Items[i].FindControl("uxProductKitItemDetails");

            foreach (ProductKitItemValue item in details.GetSelectedItem())
            {
                itemSelected.Add(item);
            }
        }

        return(itemSelected);
    }