public Dropdown(Button button, DropdownDirection dropdownDirection = DropdownDirection.DropDown, bool asSplitButton = false) : base("div") { Button = button; switch (dropdownDirection) { case DropdownDirection.DropDown: ClassName = "dropdown"; break; case DropdownDirection.DropUp: ClassName = "btn-group dropup"; break; case DropdownDirection.DropRight: ClassName = "btn-group dropright"; break; case DropdownDirection.DropLeft: ClassName = "btn-group dropleft"; break; default: throw new ArgumentOutOfRangeException(nameof(dropdownDirection), dropdownDirection, null); } if (asSplitButton) { SplitButton = new Button() { ClassName = button.ClassName + "dropdown-toggle dropdown-toggle-split" }; SplitButton.SetAttribute("data-toggle", "dropdown"); SplitButton.SetAttribute("aria-haspopup", "true"); SplitButton.SetAttribute("aria-expanded", "false"); AppendChild(button); AppendChild(SplitButton); } else { button.ClassName += " dropdown-toggle"; button.SetAttribute("data-toggle", "dropdown"); button.SetAttribute("aria-haspopup", "true"); button.SetAttribute("aria-expanded", "false"); AppendChild(button); } _dropDownMenu = new Div() { ClassName = "dropdown-menu" }; AppendChild(_dropDownMenu); }
public CustomComboBoxBuilder <TModel, TValue> DropdownDirection(DropdownDirection direction) { _dropdownDirection = direction; return(this); }
public static string ToDescriptionString(this DropdownDirection val) { DescriptionAttribute[] attributes = (DescriptionAttribute[])val.GetType().GetField(val.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), false); return(attributes.Length > 0 ? attributes[0].Description : string.Empty); }
public AutoCompleteBuilder <TModel, TValue> DropdownDirection(DropdownDirection direction) { _dropdownDirection = direction; return(this); }