ComponentOne ASP.NET MVC Controls
Quick Start
ASP.NET MVC Controls > Controls > Input > Controls > ListBox > Quick Start

This topic demonstrates how to add a ListBox control to your application. For information on how to add ASP.NET MVC Edition controls, see Adding Controls.

This topic comprises of four steps:

The following image shows how the ListBox appears after completing the steps above. The example uses model Cities.cs added in the ComboBox QuickStart.

Step 1: Create an MVC Application

Create a new MVC application using the ComponentOne or VisualStudio templates. For more information about creating an MVC application, see Configuring your MVC Application topic.

Step 2: Add a new Controller and View

Add a new Controller:

  1. In the Solution Explorer, right click the folder Controllers.
  2. From the context menu, select Add | Controller. The Add Scaffold dialog appears.
  3. Complete the following steps in the Add Scaffold dialog:
    1. Select Empty MVC Controller template.
    2. Set name of the controller (for example: Default1Controller).
    3. Click Add.
  4. A new controller is added to the application.
  5. Replace the method Index() with the following method.
    C#
    Copy Code
    public ActionResult Index()
    {
        ViewBag.Cities = MVCFlexGrid.Models.Cities.GetCities();
        return View();
    }
    

Add a View for the controller:

  1. From the Solution Explorer, expand the folder Controllers and double click the controller (for example: Default1Controller) to open it.
  2. Place the cursor inside the method Index().
  3. Right click and select Add View. The Add View dialog appears.
  4. In the Add View dialog, verify that the View name is Index and View engine is Razor (CSHTML).
  5. Click Add. A view is added for the controller.

Step 3: Add the Control

  1. From the Solution Explorer, expand the folder Views.
  2. Double click Index.cshtml to open it.
  3. Replace the default code of the Index.cshtml file with the code given below to initialize a ListBox control.
    Razor
    Copy Code
    @{
        List<string> cities = ViewBag.Cities;
    }
    <div>
        <label>Select your city:</label>
        @(Html.C1().ListBox()
            .Bind(cities)
            .Width(250).Height(150)
        )
    </div>
    
    HTML
    Copy Code
    @{
        List<string> cities = ViewBag.Cities;
    }
    
    <div>
        <label>Select your city:</label>
        <div id="list" style="width:250px;height:150px"></div>
    
        <c1-list-box id="list" selected-index=0 on-client-selected-index-changed="selectedIndexChanged">
            <c1-items-source source-collection="@cities"></c1-items-source>
        </c1-list-box>
    
    </div>
    

Step 4: Build and Run the Project

  1. Click Build | Build Solution to build the project.
  2. Press F5 to run the project.
    Append the folder name and view name to the generated URL (for example: http://localhost:1234/Default1/index) in the address bar of the browser to see the view. Or link the view to the home page.

Back to Top