Multiple Columns in ASP.NET WebForms AutoComplete

27 Jan 20222 minutes to read

The Autocomplete allows list of data to be displayed in several columns and column collection can be defined and customized through the MultiColumnSettings property.

In AutoComplete Multiple Column search is based on searchColumnIndices property which allows user to search text for any number of fields in the suggestion list without modifying the selected text format.

NOTE

if we use searchColumnIndices as “[0,1,2]” means search based on 0, 1 and 2 columns data alone.

In AutoComplete Multiple Column searched value is updated to autocomplete input box based on StringFormat property which specifies values to updated.

NOTE

StringFormat as “{0} ({1}) ({2})” means search based on 0, 1 and 2 columns data.

Name Description
Enable Allow list of data to be displayed in several columns.
ShowHeader Allow header text to be displayed in corresponding columns.
StringFormat Displayed selected value and autocomplete search based on mentioned column value specified in that format.
Columns Field and Header Text collections can be defined and customized through this field.
Field Get or set a value that indicates to display the columns in the autocomplete mapping with column name of the dataSource.
HeaderText Get or set a value that indicates to display the title of that particular column.

Configuring Multiple Columns

The following steps explain the configuration of the multiple columns for an AutoComplete textbox.

In the design page, define the AutoComplete control and configure its MultiColumnSettings property accordingly.

  • HTML
  • <%--Refer the ObjectDataSource binding for DataBinding to this code snippet--%>
    
    Add the below code in corresponding code behind. 
      <%--this.AutoCompleteBelmt.MultiColumnSettings.SearchColumnIndices = new List<int> { 0,1,2 };--%>
    
        <div style="width: 600px">
    
        <div style="display:inline-block; float:left; margin-right:25px">
    
        <span style="display:block; margin-bottom:12px">Using Delimiter</span>    
        <ej:Autocomplete ID="AutoCompleteBelmt" runat="server" DataSourceID="ObjectDataSource1" 
    
        <MultiColumnSettings Enable="true" ShowHeader="true" StringFormat="{0}"   >
        <Columns>
        <ej:Columns Field="ID" HeaderText="ID" />
        <ej:Columns Field="Text" HeaderText="Text" />
        <ej:Columns Field="Catagory" HeaderText="Catagory" />
        </Columns>
        </MultiColumnSettings> 
        </div>
    
        </div>

    The following screenshot is the output for AutoComplete control with configured multiple columns.

    ASP.NET WebForms AutoComplete Multiple Columns