tags:

views:

38

answers:

4

I have a dropdown list which contain "HR", "Test", and "DEV". I want on the basis of selection "HR", "Test", and "DEV" the second dropdown values will display.

private void additems()
{
    //Controls.Add(cmbpackage);
    cmbpackage.Items.Add("HR");
    cmbpackage.Items.Add("Test");
    cmbpackage.Items.Add("DEV");
    addmodules();
}
private void addmodules()
{
    if (cmbpackage.SelectedItem =="HR")
    {
        cmbmodule.Items.Add("ModuleHR1");
        cmbmodule.Items.Add("ModuleHR2");
        cmbmodule.Items.Add("ModuleHR3");
    }

    if (cmbpackage.SelectedItem == "Test")
    {
        cmbmodule.Items.Add("ModuleTest1");
        cmbmodule.Items.Add("ModuleTest2");
        cmbmodule.Items.Add("ModuleTest3");
    }

    if (cmbpackage.SelectedItem == "DEV")
    {
        cmbmodule.Items.Add("ModuleDEV1");
        cmbmodule.Items.Add("ModuleDEV2");
        cmbmodule.Items.Add("ModuleDEV3");
    }

}
A: 

Hi All,

PFB the issue which I am facing

Values are not populating in "cmbmodule" dropdown while selecting the values (HR, Test, DEV) from "cmbpackage" dropdown

sauravinfy
You know, you can edit your question too! It's even encouraged.
Vilx-
@Vilx- I just now got to know the solution..Thanks for your co-operation
sauravinfy
A: 

You should register to the SelectedIndexChanged event of cmbPackage.

Itay
A: 

You need to hook into the SelectedIndexChanged event:

http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectedindexchanged.aspx

Burt
A: 

Hi All,

First of all thanks to all, now I am getting the dropdown value change on the selection of first dropdwon. PFB the source code.

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;

namespace TestExcel { public partial class Form1 : Form { public Form1() { InitializeComponent(); cmbpackage.Items.Add("---Please Select---"); cmbpackage.Items.Add("HR"); cmbpackage.Items.Add("Test"); cmbpackage.Items.Add("DEV"); }

    private void cmbpackage_SelectedIndexChanged(object sender, EventArgs e)
    {
        string selectedValue = cmbpackage.SelectedIndex.ToString();            

        if (selectedValue == "1")
        {
            cmbmodule.Items.Add("ModuleHR1");
            cmbmodule.Items.Add("ModuleHR2");
            cmbmodule.Items.Add("ModuleHR3");

        }

        else if (selectedValue == "2")
        {
            cmbmodule.Items.Add("ModuleTest1");
            cmbmodule.Items.Add("ModuleTest2");
            cmbmodule.Items.Add("ModuleTest3");
        }

        else
        {
            cmbmodule.Items.Add("ModuleDEV1");
            cmbmodule.Items.Add("ModuleDEV2");
            cmbmodule.Items.Add("ModuleDEV3");
        }

    }

}

}

Now I want to make index 0. I mean "Please Select" will load at the time of page load only and not by clicking on "cmbpackage" dropdown.

Also I want to change the drop dwon values of "cmbmodule" based on selections on the cmbpackage dropdown. Currently its changing but all the values are getting stored in the "cmbmodule" dropdown. I want if I select "HR" only ModuleHR1, ModuleHR2, ModuleHR3 will display and same for rest "Test" and "DEV".

sauravinfy