Skip to main content

how to implement option group in asp.net drop down list

In my previous article i have explained about Bind Specific Columns Of Datatable To Gridview In C#.Net, ASP.Net. In this tutorial i am explaining about how to implement option group in asp.net drop down list. In html select list option group is used to group the similiar items. But in asp.net dropdown list we don't have that option. But we can achieve this with the help of jQuery. Dropdownlist is a asp.net control used to show list of values from that the user can select one value.

Here for explanation purpose I have a datatable which contains employees from different department. And the drop down list will group the items based on the department. To use the datatable add the below namespace first.
using System.Data;
Below is the complete cs code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;

public partial class OptionGroup : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //creating data table
        DataTable dtable = new DataTable();
        
        //adding columns to data table
        dtable.Columns.Add("EmpId", typeof(int));
        dtable.Columns.Add("EmployeeName", typeof(string));
        dtable.Columns.Add("Departmaent", typeof(string));
        
        //adding rowa to datatable
        dtable.Rows.Add(1, "Daniel", "Development");
        dtable.Rows.Add(1, "Nancy", "Development");
        dtable.Rows.Add(1, "Alen", "Development");

        dtable.Rows.Add(1, "Baskar", "Design");
        dtable.Rows.Add(1, "Saleem", "Design");
        dtable.Rows.Add(1, "Mohammed", "Design");

        dtable.Rows.Add(1, "Akbar", "Quality Control");
        dtable.Rows.Add(1, "Crystal", "Quality Control");
        dtable.Rows.Add(1, "Iren", "Quality Control");

        // adding datatable rows to drop down list 
        ListItem newItem;
        foreach(DataRow drow in dtable.Rows)
        {
            newItem = new ListItem(drow["EmployeeName"].ToString(), drow["EmpId"].ToString());
            newItem.Attributes["OptionGroup"] = drow["Departmaent"].ToString();

            ddlOptionGroup.Items.Add(newItem);
        }
    }
}

Equivalent vb.net code is given below
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data

Public Partial Class OptionGroup
 Inherits System.Web.UI.Page
 Protected Sub Page_Load(sender As Object, e As EventArgs)
  'creating data table
  Dim dtable As New DataTable()

  'adding columns to data table
  dtable.Columns.Add("EmpId", GetType(Integer))
  dtable.Columns.Add("EmployeeName", GetType(String))
  dtable.Columns.Add("Departmaent", GetType(String))

  'adding rowa to datatable
  dtable.Rows.Add(1, "Daniel", "Development")
  dtable.Rows.Add(1, "Nancy", "Development")
  dtable.Rows.Add(1, "Alen", "Development")

  dtable.Rows.Add(1, "Baskar", "Design")
  dtable.Rows.Add(1, "Saleem", "Design")
  dtable.Rows.Add(1, "Mohammed", "Design")

  dtable.Rows.Add(1, "Akbar", "Quality Control")
  dtable.Rows.Add(1, "Crystal", "Quality Control")
  dtable.Rows.Add(1, "Iren", "Quality Control")

  ' adding datatable rows to drop down list 
  Dim newItem As ListItem
  For Each drow As DataRow In dtable.Rows
   newItem = New ListItem(drow("EmployeeName").ToString(), drow("EmpId").ToString())
   newItem.Attributes("OptionGroup") = drow("Departmaent").ToString()

   ddlOptionGroup.Items.Add(newItem)
  Next
 End Sub
End Class
Refer the jquery library in your asp.net web page.
    

Once the drop down list is loaded by using the jQuery wrapAll function we are grouping the drop down list items using the department attribute of the each list item. wrapAll() function Wraps a HTML structure around all elements in the set of matched elements.. Below is the jQuery code used to group the drop down list items.


Below is the complete aspx code.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="OptionGroup.aspx.cs" Inherits="OptionGroup" %>




    Asp.Net Option Group Example 
    


    
    

Asp.Net Dropdown List Option Group Example


The final output will look like the below image.


Comments

Post a Comment

Popular posts from this blog

Code To Convert rupees(numbers) into words using C#.Net

Introduction: In my previous article I have explained about how to validate emailid using javascript . In this article I am going to explain about code used to convert rupees(numbers) into words using C#.Net . Explanation: For explanation purpose I have a page. It has a textbox to input the numbers. And when you click on the convert to words button then it will convert the input numbers into words and shows it in the below label. Below is the C# code used to do this functionality. public static string NumbersToWords( int inputNumber) {     int inputNo = inputNumber;     if (inputNo == 0)         return "Zero" ;     int [] numbers = new int [4];     int first = 0;     int u, h, t;     System.Text. StringBuilder sb = new System.Text. StringBuilder ();     if (inputNo < 0)     {         sb.Append( "Minus " );         inputNo = -inputNo;     }     string [] words0 = { "" , "One " ,

C# code to send mail using smtp from gmail,yahoo mail and live mail

Introduction: In my previous article I have explained about   How to bind/Unbind events in jQuery . In this article I am going to explain about how to send mail from ASP.Net using gmail,yahoomail and live mail credentials. Explanation: First Include the below namespaces in your code behind file. using System; using System.Net; using System.Net.Mail;

Geckofx Browser in Winform Application

Bored with IE browser in your winform application ? Want to do everything as you doing in your Firefox or Chrome Browser ? Play with automation ? Then here is your choice . Introduction:  GeckoFX is a Windows Forms control written in clean, commented C# that embeds the Mozilla Gecko browser control in any Windows Forms Application. It also contains a simple class model providing access to the HTML and CSS DOM . GeckoFX was originally created by Andrew Young for the fast-growing visual CSS editor, Stylizer . It is now released as open-source under the Mozilla Public License.  You can download it here :   Geckofx 22.0 And the supporting file Xulrunner here :   Xulrunner Files Hope you have downloaded above two files. Here our journey going to start. Create your winform application in visual studio and do the following: right click the toolbox -> Choose items -> Browse the "Geckofx-winforms.dll" and click "yes" for “Load it anyw