AjaxControlToolkit.CascadingDropDown.CascadingDropDown_ClientStateValuesLoaded C# (CSharp) Метод

CascadingDropDown_ClientStateValuesLoaded() публичный Метод

public CascadingDropDown_ClientStateValuesLoaded ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
Результат void
        void CascadingDropDown_ClientStateValuesLoaded(object sender, EventArgs e)
        {
            var dropDownList = (ListControl)TargetControl;
            if(dropDownList == null)
                throw new ArgumentNullException("No target control is set for the CascadingDropDown extender.");

            dropDownList.Items.Clear();
            var separator = ":::";
            var clientState = base.ClientState;
            var separatorIndex = (clientState ?? String.Empty).IndexOf(separator, StringComparison.Ordinal);
            if(separatorIndex  == - 1)
                dropDownList.Items.Add(clientState);
            else {
                // Parse the value/text/optionTitle out of ClientState and set them
                var tokens = Regex.Split(clientState, separator);
                var value = tokens[0];
                var text = tokens[1];
                var item = new ListItem(text, value);
                if(tokens.Length > 2) {
                    var optionTitle = tokens[2];
                    item.Attributes.Add("title", optionTitle);
                }
                dropDownList.Items.Add(item);
            }
        }