Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Editable DropDownlist

0.00/5 (No votes)
11 Nov 2008 1  
How to create and use editable dropdownlist in asp.net

Introduction

In ASP.Net Dropdownlist control cannot be editable by default. We can easily overcome this problem. This article is used to overcome this issue.

Using the code

Create one blank asp.net web page(Default.aspx) and include one textbox and dropdownlist control. see the following code.

<asp:TextBox ID="txtDisplay" runat="server"></asp:TextBox>

<asp:DropDownList ID="ddSelect" runat="server">

    <asp:ListItem Value="test1" >test1</asp:ListItem>

    <asp:ListItem Value="test2">test2</asp:ListItem>

</asp:DropDownList>
        

After inserted this controls into web page we need to set the following style into textbox control.

style="position:absolute"  

The position property places an element in a static, relative, absolute or fixed position. There are four types of position like static, relative, absolute and fixed.

Value Description
static Default. An element with position: static always has the position the normal flow of the page gives it (a static element ignores any top, bottom, left, or right declarations)
relative An element with position: relative moves an element relative to its normal position, so "left:20" adds 20 pixels to the element's LEFT position
absolute An element with position: absolute is positioned at the specified coordinates relative to its containing block. The element's position is specified with the "left", "top", "right", and "bottom" properties
fixed An element with position: fixed is positioned at the specified coordinates relative to the browser window. The element's position is specified with the "left", "top", "right", and "bottom" properties. The element remains at that position regardless of scrolling. Works in IE7 (strict mode)

<asp:TextBox style="position:absolute" ID="txtDisplay" runat="server"></asp:TextBox>  


After adding the position style we need to set the equal width for both textbox and dropdownlist control.

<asp:TextBox style="width:120px;position:absolute" ID="txtDisplay" runat="server"></asp:TextBox>

<asp:DropDownList ID="ddSelect" style="width:140px" runat="server">

<asp:ListItem Value="test1" >test1</asp:ListItem>

<asp:ListItem Value="test2">test2</asp:ListItem>

</asp:DropDownList>

After adding the Styles we need to create javascript function. This function is used to display the selected dropdwon 
text into textbox control.

<script language="javascript" type="text/javascript">

function DisplayText()
{
    document.getElementById("txtDisplay").value = document.getElementById("ddSelect").value;
    document.getElementById("txtDisplay").focus();
}
</script> 
After adding the javascript function. use this function for Dropdown change event fires. 
Add the following code into Default.aspx.cs file.

protected void Page_Load(object sender, EventArgs e)
{
	ddSelect.Attributes.Add("onChange", "DisplayText();");
}

Conclusion:

So we can easily create a editable dropdownlist.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here