The Combo component is similar to the Select component in that it provides a list of options from which the user can make a selection. In contrast to the Select component, the Combo component displays all options in a virtualized list of items, meaning the combo box can simultaneously show thousands of options, where one or more options can be selected. Additionally, users can create custom item templates, allowing for robust data visualization. The Combo component features case-sensitive filtering, grouping, complex data binding, dynamic addition of values and more.

Implements
  • IComponent
  • IHandleEvent
  • IHandleAfterRender
  • JsonSerializable
  • IDisposable

constructor

public IgbCombo()

Returns IgbCombo<T>

Inherited from: IgbBaseComboBox

Gets the components default event behavior.

protected override ControlEventBehavior DefaultEventBehavior { get; }

Inherited from: IgbBaseComboBox

Sets the open state of the component.

[Parameter]
public bool Open { get; set; }

Inherited from: BaseRendererControl

[Inject]
protected IIgniteUIBlazor IgBlazor { get; set; }

Inherited from: BaseRendererControl

[Parameter]
public string Height { get; set; }

Inherited from: BaseRendererControl

[Parameter]
public string Width { get; set; }

Inherited from: BaseRendererControl

[Parameter]
public string Class { get; set; }

Inherited from: BaseRendererControl

[Parameter(CaptureUnmatchedValues = true)]
public Dictionary<string, object> AdditionalAttributes { get; set; }

Inherited from: BaseRendererControl

protected virtual string ParentTypeName { get; }

Inherited from: BaseRendererControl

Gets or sets how events are bubbled up from JavaScript to Blazor.

[Parameter]
public ControlEventBehavior EventBehavior { get; set; }

Inherited from: BaseRendererControl

[Parameter]
public RenderFragment ChildContent { get; set; }

Inherited from: BaseRendererControl

Gets or sets what type of date conversion to make when round tripping dates.

[Parameter]
public RoundTripDateConversion RoundTripDateConversion { get; set; }

Inherited from: BaseRendererControl

protected virtual bool UseDirectRender { get; }

Inherited from: BaseRendererControl

protected virtual string DirectRenderElementName { get; }

Inherited from: BaseRendererControl

protected virtual bool NeedsDynamicContent { get; }

Inherited from: BaseRendererControl

protected virtual bool UseCamelEnumValues { get; }

The autofocus attribute of the control.

[Parameter]
public bool Autofocus { get; set; }

Focuses the list of options when the menu opens.

[Parameter]
public bool AutofocusList { get; set; }

Enables the case sensitive search icon in the filtering input.

[Parameter]
public bool CaseSensitiveIcon { get; set; }

The data source used to generate the list of options.

[Parameter]
public object Data { get; set; }

Provides a means of setting Data in the JavaScript environment.

[Parameter]
public string DataScript { get; set; }

Hides the clear button.

[Parameter]
public bool DisableClear { get; set; }

Disables the filtering of the list of options.

[Parameter]
public bool DisableFiltering { get; set; }

The disabled state of the component

[Parameter]
public bool Disabled { get; set; }

The key in the data source used to display items in the list.

[Parameter]
public string? DisplayKey { get; set; }

An object that configures the filtering of the combo.

[Parameter]
public IgbFilteringOptions FilteringOptions { get; set; }
[Parameter]
public RenderFragment<object> GroupHeaderTemplate { get; set; }

Provides a means of setting GroupHeaderTemplate in the JavaScript environment.

[Parameter]
public string GroupHeaderTemplateScript { get; set; }

The key in the data source used to group items in the list.

[Parameter]
public string GroupKey { get; set; }

Sorts the items in each group by ascending or descending order.

[Parameter]
public GroupingDirection GroupSorting { get; set; }

Control the validity of the control.

[Parameter]
public bool Invalid { get; set; }
[Parameter]
public RenderFragment<object> ItemTemplate { get; set; }

Provides a means of setting ItemTemplate in the JavaScript environment.

[Parameter]
public string ItemTemplateScript { get; set; }

The label attribute of the control.

[Parameter]
public string Label { get; set; }

Gets/Sets the locale used for getting language, affecting resource strings.

[Parameter]
public string Locale { get; set; }

The outlined attribute of the control.

[Parameter]
public bool Outlined { get; set; }

The placeholder attribute of the control.

[Parameter]
public string Placeholder { get; set; }

The placeholder attribute of the search input.

[Parameter]
public string PlaceholderSearch { get; set; }

Makes the control a required field in a form context.

[Parameter]
public bool Required { get; set; }

Enables single selection mode and moves item filtering to the main input.

[Parameter]
public bool SingleSelect { get; set; }
protected override bool SupportsVisualChildren { get; }
public override string Type { get; }

Sets the value (selected items). The passed value must be a valid JSON array. If the data source is an array of complex objects, the valueKey attribute must be set. Note that when displayKey is not explicitly set, it will fall back to the value of valueKey.

[Parameter]
public T[] Value { get; set; }

The key in the data source used when selecting items.

[Parameter]
public string? ValueKey { get; set; }

Inherited from: BaseRendererControl

protected Dictionary<Type, Dictionary<string, FieldInfo>> eventCallbacksCache

Inherited from: BaseRendererControl

protected string _cachedSerializedContent

Inherited from: IgbBaseComboBox

public Task SetNativeElementAsync(object element)

Parameters

  • element: object

Returns any

Inherited from: IgbBaseComboBox

public void SetNativeElement(object element)

Parameters

  • element: object

Returns any

Inherited from: IgbBaseComboBox

Shows the component.

public Task<bool> ShowAsync()

Returns any

Inherited from: IgbBaseComboBox

public bool Show()

Returns any

Inherited from: IgbBaseComboBox

Hides the component.

public Task<bool> HideAsync()

Returns any

Inherited from: IgbBaseComboBox

public bool Hide()

Returns any

Inherited from: IgbBaseComboBox

Toggles the open state of the component.

public Task<bool> ToggleAsync()

Returns any

Inherited from: IgbBaseComboBox

public bool Toggle()

Returns any

Inherited from: BaseRendererControl

Resolves the components event behavior if Auto is selected.

protected ControlEventBehavior ResolveEventBehavior()

Returns any

Inherited from: BaseRendererControl

protected string ToSpinal(string value)

Parameters

  • value: string

Returns any

Inherited from: BaseRendererControl

protected virtual string TransformSimpleKey(string key)

Parameters

  • key: string

Returns any

Inherited from: BaseRendererControl

protected virtual bool IsTransformedEnumValue(string key)

Parameters

  • key: string

Returns any

TransformPotentialEnumValue(string, object)

Section titled "TransformPotentialEnumValue(string, object)"

Inherited from: BaseRendererControl

protected virtual object TransformPotentialEnumValue(string key, object value)

Parameters

  • key: string
  • value: object

Returns any

Inherited from: BaseRendererControl

protected virtual SequenceInfo BuildSequenceInfo(int startSequence)

Parameters

  • startSequence: int

Returns any

Inherited from: BaseRendererControl

protected override void BuildRenderTree(RenderTreeBuilder builder)

Parameters

  • builder: RenderTreeBuilder

Returns any

Inherited from: BaseRendererControl

protected Type TemplateContentType(string templateId)

Parameters

  • templateId: string

Returns any

Inherited from: BaseRendererControl

protected override Task OnAfterRenderAsync(bool firstRender)

Parameters

  • firstRender: bool

Returns any

Inherited from: BaseRendererControl

public Task EnsureReady()

Returns any

Inherited from: BaseRendererControl

protected void MarkPropDirty(string propertyName)

Parameters

  • propertyName: string

Returns any

Inherited from: BaseRendererControl

protected bool IsPropDirty(string propertyName)

Parameters

  • propertyName: string

Returns any

Serialize(SerializationContext, string)

Section titled "Serialize(SerializationContext, string)"

Inherited from: BaseRendererControl

public void Serialize(SerializationContext context, string propertyName = null)

Parameters

  • context: SerializationContext
  • propertyName: string

Returns any

Inherited from: BaseRendererControl

public string Serialize()

Returns any

InvokeMethod(string, object[], string[], ElementReference[])

Section titled "InvokeMethod(string, object[], string[], ElementReference[])"

Inherited from: BaseRendererControl

protected Task<object> InvokeMethod(string methodName, object[] arguments, string[] types, ElementReference[] nativeElements = null)

Parameters

  • methodName: string
  • arguments: object[]
  • types: string[]
  • nativeElements: ElementReference[]

Returns any

InvokeMethodSync(string, object[], string[], ElementReference[])

Section titled "InvokeMethodSync(string, object[], string[], ElementReference[])"

Inherited from: BaseRendererControl

protected object InvokeMethodSync(string methodName, object[] arguments, string[] types, ElementReference[] nativeElements = null)

Parameters

  • methodName: string
  • arguments: object[]
  • types: string[]
  • nativeElements: ElementReference[]

Returns any

Inherited from: BaseRendererControl

Prevents data change notifications from be propagated to the component.

public void SuspendNotifications(object dataSource)

Parameters

  • dataSource: object

Returns any

Inherited from: BaseRendererControl

Resumes data change notifications.

public void ResumeNotifications(object dataSource, bool notify = true)

Parameters

  • dataSource: object
  • notify: bool

Returns any

NotifyInsertItem(object, int, object)

Section titled "NotifyInsertItem(object, int, object)"

Inherited from: BaseRendererControl

public void NotifyInsertItem(object dataSource, int index, object refItem)

Parameters

  • dataSource: object
  • index: int
  • refItem: object

Returns any

NotifyRemoveItem(object, int, object)

Section titled "NotifyRemoveItem(object, int, object)"

Inherited from: BaseRendererControl

public void NotifyRemoveItem(object dataSource, int index, object oldItem)

Parameters

  • dataSource: object
  • index: int
  • oldItem: object

Returns any

Inherited from: BaseRendererControl

public void NotifyClearItems(object dataSource)

Parameters

  • dataSource: object

Returns any

NotifySetItem(object, int, object, object)

Section titled "NotifySetItem(object, int, object, object)"

Inherited from: BaseRendererControl

public void NotifySetItem(object dataSource, int index, object oldItem, object newItem)

Parameters

  • dataSource: object
  • index: int
  • oldItem: object
  • newItem: object

Returns any

NotifyUpdateItem(object, int, object, bool)

Section titled "NotifyUpdateItem(object, int, object, bool)"

Inherited from: BaseRendererControl

public void NotifyUpdateItem(object dataSource, int index, object refItem, bool syncDataOnly = false)

Parameters

  • dataSource: object
  • index: int
  • refItem: object
  • syncDataOnly: bool

Returns any

Inherited from: BaseRendererControl

public void OnRefChanged(string refName, object refValue)

Parameters

  • refName: string
  • refValue: object

Returns any

Inherited from: BaseRendererControl

public void OnInvokeReturn(long invokeId, object returnValue)

Parameters

  • invokeId: long
  • returnValue: object

Returns any

Inherited from: BaseRendererControl

protected string Camelize(string value)

Parameters

  • value: string

Returns any

Inherited from: BaseRendererControl

protected string ToPascal(string value)

Parameters

  • value: string

Returns any

OnElementNameChanged(BaseRendererElement, string, string)

Section titled "OnElementNameChanged(BaseRendererElement, string, string)"

Inherited from: BaseRendererControl

protected void OnElementNameChanged(BaseRendererElement element, string oldName, string newName)

Parameters

  • element: BaseRendererElement
  • oldName: string
  • newName: string

Returns any

Inherited from: BaseRendererControl

protected virtual void Dispose(bool disposing)

Parameters

  • disposing: bool

Returns any

SetResourceStringAsync(string, string, string)

Section titled "SetResourceStringAsync(string, string, string)"

Inherited from: BaseRendererControl

public Task<object> SetResourceStringAsync(string grouping, string id, string value)

Parameters

  • grouping: string
  • id: string
  • value: string

Returns any

SetResourceStringAsync(string, string)

Section titled "SetResourceStringAsync(string, string)"

Inherited from: BaseRendererControl

public Task<object> SetResourceStringAsync(string grouping, string json)

Parameters

  • grouping: string
  • json: string

Returns any

SetPropertyValue(object, PropertyInfo, JsonElement)

Section titled "SetPropertyValue(object, PropertyInfo, JsonElement)"

Inherited from: BaseRendererControl

protected void SetPropertyValue(object item, PropertyInfo property, JsonElement jsonElement)

Parameters

  • item: object
  • property: PropertyInfo
  • jsonElement: JsonElement

Returns any

SetPropertyValue(object, PropertyInfo, object)

Section titled "SetPropertyValue(object, PropertyInfo, object)"

Inherited from: BaseRendererControl

protected void SetPropertyValue(object item, PropertyInfo property, object value)

Parameters

  • item: object
  • property: PropertyInfo
  • value: object

Returns any

Inherited from: BaseRendererControl

public void Dispose()

Returns any

[WCWidgetMemberName("Blur")]
public void BlurComponent()

Returns any

Removes focus from the component.

[WCWidgetMemberName("Blur")]
public Task BlurComponentAsync()

Returns any

public bool CheckValidity()

Returns any

Checks for validity of the control and emits the invalid event if it invalid.

public Task<bool> CheckValidityAsync()

Returns any

public void Deselect(object[] items)

Parameters

  • items: object[]

Returns any

public Task DeselectAsync(object[] items)

Parameters

  • items: object[]

Returns any

protected override void EnsureModulesLoaded()

Returns any

public override object FindByName(string name)

Parameters

  • name: string

Returns any

[WCWidgetMemberName("Focus")]
public void FocusComponent(IgbFocusOptions options)

Parameters

  • options: IgbFocusOptions

Returns any

FocusComponentAsync(IgbFocusOptions)

Section titled "FocusComponentAsync(IgbFocusOptions)"

Sets focus on the component.

[WCWidgetMemberName("Focus")]
public Task FocusComponentAsync(IgbFocusOptions options)

Parameters

  • options: IgbFocusOptions

Returns any

public T[] GetCurrentValue()

Returns any

public Task<T[]> GetCurrentValueAsync()

Returns any

public object[] GetSelection()

Returns any

public Task<object[]> GetSelectionAsync()

Returns any

public bool ReportValidity()

Returns any

Checks for validity of the control and shows the browser message if it invalid.

public Task<bool> ReportValidityAsync()

Returns any

protected override string ResolveDisplay()

Returns any

public void Select(object[] items)

Parameters

  • items: object[]

Returns any

public Task SelectAsync(object[] items)

Parameters

  • items: object[]

Returns any

public void SetCustomValidity(string message)

Parameters

  • message: string

Returns any

Sets a custom validation message for the control. As long as message is not empty, the control is considered invalid.

public Task SetCustomValidityAsync(string message)

Parameters

  • message: string

Returns any

[Parameter]
public EventCallback<IgbVoidEventArgs> Blur { get; set; }
[Parameter]
public EventCallback<IgbComboChangeEventArgs> Change { get; set; }
[Parameter]
public EventCallback<IgbVoidEventArgs> Closed { get; set; }
[Parameter]
public EventCallback<IgbVoidEventArgs> Closing { get; set; }
[Parameter]
public EventCallback<IgbVoidEventArgs> Focus { get; set; }
[Parameter]
public EventCallback<IgbVoidEventArgs> Opened { get; set; }
[Parameter]
public EventCallback<IgbVoidEventArgs> Opening { get; set; }
[Parameter]
public EventCallback<T[]> ValueChanged { get; set; }
[Parameter]
public string BlurScript { get; set; }
[Parameter]
public string ChangeScript { get; set; }
[Parameter]
public string ClosedScript { get; set; }
[Parameter]
public string ClosingScript { get; set; }
[Parameter]
public string FocusScript { get; set; }
[Parameter]
public string OpenedScript { get; set; }
[Parameter]
public string OpeningScript { get; set; }