Click here to Skip to main content
15,888,113 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi all,

I have an asp.net page which contains multiple textboxes created at runtime.
Now i want to add an autocomplete Extender for those runtime textboxes, i have google it many times but not get any relevant idea. Suggestions are required.

Thanks in advance
Ignore English

Murthy
Posted
Updated 20-Jun-12 2:17am
v2

 
Share this answer
 
Comments
Murthy_RDV 20-Jun-12 7:06am    
TextBox txtRemarks=new TextBox();
this.form1.controls.add(txtRemarks);

this is my textbox which is created at runtime.
Now i want to add autocomeplete Extender control. Already i have webservice, and relevant methods. Where can i add this autocomplete Extender code either .aspx.cs page or .aspx page?
Hi,

Try this code sample...
C#
protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {	
    	for(int i = 0; i < 10; i++)
    	{
            // Create TextBox and its properties
            string textBoxID = String.Format("{0}_{1}", "AutoCompleteTextBox", i);
            TextBox textbox = new TextBox();
            textbox.ID = textBoxID
            textbox.Width = new Unit(250);
            textbox.Attributes.Add("autocomplete", "off");
            
            // Create AutoCompleteExtender and its properties
            AjaxControlToolkit.AutoCompleteExtender autoCompleteExtender = new AjaxControlToolkit.AutoCompleteExtender();
            autoCompleteExtender.TargetControlID = textBoxID;
            autoCompleteExtender.ServiceMethod = "GetCompletionList";
            autoCompleteExtender.ServicePath = "YourAutoCompleteWebService.asmx";
            autoCompleteExtender.CompletionInterval = 1500;
            autoCompleteExtender.CompletionSetCount = 10;
            autoCompleteExtender.EnableCaching = true;
            
            // Add created controls to the page controls collection
            this.Controls.Add(textbox);
            this.Controls.Add(autoCompleteExtender);
    	}
    }
}


This code is not tested. It's just a concept and maybe you will find some syntax errors... ;)
 
Share this answer
 
v2
Comments
Murthy_RDV 20-Jun-12 9:10am    
Hi, Martin, its coming thanks you

Murthy
Hi,

To get auto complete extender for dynamic textboxes at runtime. This is the code can help you. First create a webservice, along with web methods to get data from database and write the following code in page load event

//Example shows 10 textboxes

Protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
for (int i = 0; i < 10; i++)
{
string textBoxId = String.Format("{0}_{1}", "AutoCompleteTextBox", i);
TextBox textbox = new TextBox();
textbox.ID = "textboxId"+i;
textbox.Width = 250;
textbox.Attributes.Add("autocomplete", "off");

AjaxControlToolkit.AutoCompleteExtender autoCompleteExtender = new AjaxControlToolkit.AutoCompleteExtender();
autoCompleteExtender.TargetControlID = "textboxId"+i;
autoCompleteExtender.ServiceMethod = "your web service name";
autoCompleteExtender.ServicePath = "Your Webservice.asmx ";
autoCompleteExtender.CompletionInterval = 1500;
autoCompleteExtender.CompletionSetCount = 10;
autoCompleteExtender.EnableCaching = true;
autoCompleteExtender.MinimumPrefixLength = 2;
autoCompleteExtender.CompletionListCssClass = "autocomplete_completionListElement";
autoCompleteExtender.CompletionListItemCssClass = "autocomplete_listItem";
autoCompleteExtender.CompletionListHighlightedItemCssClass = "autocomplete_highlightedListItem";
autoCompleteExtender.DelimiterCharacters = ";, :";
autoCompleteExtender.FirstRowSelected = true;

this.form1.Controls.Add(textbox);
this.form1.Controls.Add(autoCompleteExtender);
}
}

}
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900