AJH.CMS.WEB.UI.Admin.Services.CMSControlService.GetDropDownContainerValues C# (CSharp) Method

GetDropDownContainerValues() private method

private GetDropDownContainerValues ( string knownCategoryValues, string category ) : AjaxControlToolkit.CascadingDropDownNameValue[]
knownCategoryValues string
category string
return AjaxControlToolkit.CascadingDropDownNameValue[]
        public AjaxControlToolkit.CascadingDropDownNameValue[] GetDropDownContainerValues(string knownCategoryValues, string category)
        {
            StringDictionary knownCategoryValuesDictionary = AjaxControlToolkit.CascadingDropDown.ParseKnownCategoryValuesString(knownCategoryValues);

            int CMSControlID = 0;
            int.TryParse(knownCategoryValuesDictionary["CMSControls"], out CMSControlID);

            List<AjaxControlToolkit.CascadingDropDownNameValue> cascadingList = new List<AjaxControlToolkit.CascadingDropDownNameValue>();
            CMSControl cmsControl = CMSControlManager.GetCMSControl(CMSControlID);
            if (cmsControl != null)
            {
                try
                {
                    System.Web.UI.Page page = new System.Web.UI.Page();
                    CMSUserControlBase userControl = page.LoadControl(cmsControl.UserControlPath) as CMSUserControlBase;
                    if (userControl != null)
                    {
                        Dictionary<string, string> itemsControl = userControl.GetContainerValue(cmsControl.ModuleID, CMSContext.PortalID, CMSContext.LanguageID);
                        foreach (KeyValuePair<string, string> itemControl in itemsControl)
                        {
                            cascadingList.Add(new AjaxControlToolkit.CascadingDropDownNameValue(itemControl.Value, itemControl.Key));
                        }
                    }
                }
                catch (Exception ex)
                {
                    cascadingList.Add(new AjaxControlToolkit.CascadingDropDownNameValue(ex.Message, "0"));
                }
            }
            return cascadingList.ToArray();
        }
    }