private void AddNewCriteria(DataListCommandEventArgs e)
        {
            DropDownList ddlField = (DropDownList)e.Item.FindControl("ddlFields");
            var          field    = Manager.Fields.First(o => o.DisplayName == ddlField.SelectedValue);

            Control ddlOperator = e.Item.FindControl("ddlOperators");

            string oper            = string.Empty;
            string val             = string.Empty;
            string userFriendlyVal = string.Empty;

            if (ddlOperator != null)
            {
                oper = (ddlOperator as DropDownList).SelectedValue;
            }

            var key = Request.Params.AllKeys.FirstOrDefault(o => o.Contains("CtrlValue"));

            if (!string.IsNullOrWhiteSpace(key))
            {
                val = Request.Params[key];

                if (field.FieldType.Type == AdvancedSearch.Enums.FieldTypeName.KeyValue)
                {
                    userFriendlyVal = (field.FieldType as AdvancedSearch.KeyValueType).KeyValues.First(o => o.Key == val).Value;
                }
                else
                {
                    userFriendlyVal = val;
                }
            }
            else if (field.FieldType.Type != AdvancedSearch.Enums.FieldTypeName.Boolean)
            {
                // show error
            }



            SelectedSearchFields.Add(new SelectedSearchField()
            {
                fieldDisplayName    = field.DisplayName,
                operatorDisplayName = oper,
                value             = val,
                UserFriendlyValue = userFriendlyVal
            });

            dlSearchCriteria.DataSource = SelectedSearchFields;
            dlSearchCriteria.DataBind();
        }