.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
david stephan
Gaurav Pal
Post New Web Links

Grab the clientid of a dynamically added control

Posted By:      Posted Date: October 06, 2010    Points: 0   Category :ASP.Net

Hi all,

I add CompareValidators dynamically in my code behind. I need to access these controls within javascript to see if they are active or not. Whats the best way to do this?

The button that calls this javascript is also added dynamically. I dont know how many validators I add and they are added via a loop. I add the name to a string which I pass into my JS function, so within JS I have access to all validators added. Heres my code behind which creates the validators:

CompareValidator CV = new CompareValidator();
CV.ID = "CV" + parameter.Name;
CV.Type = ValidationDataType.Date;
CV.Operator = ValidationCompareOperator.DataTypeCheck;
CV.ErrorMessage = "* Invalid date";
CV.Display = ValidatorDisplay.Dynamic;
CV.ControlToValidate = parameter.Name;
CV.ValidationGroup = "valGroup1";
CV.Style["font"] = "Arial";
CV.Style["color"] = "Red";
CV.Style["font-size"] = "10px";


if (validators != "")
validators += ":" + CV.ClientID;
validators = CV.UniqueID;


I then add my button passing in 'validators' string:

HtmlInputButton btn = new HtmlInputButton();
btn.Value = "Run Report";
btn.ID = "Ru

View Complete Post

More Related Resource Links

Code analysis complaint (CA2000: Dispose objects before losing scope) on dynamically added control


It appears as though CA2000 was added to the code analysis for VS2010.


We have a bunch of code that dynamically adds controls during the CreateChildControls method. On various control types, we're getting this CA2000 complaint. I changed a bunch of controls to use a Using statement. When doing this on a AjaxControlToolkit.AlwaysVisibleControlExtender control, it caused the control to always appear at the bottom of the page rather than staying always visible. In the base class of this control, I noticed that there is logic to do things differently during PreRender if dispose had previously been called.


What is the proper way to satisfy CA2000 on a control like this while adding the control dynamically during CreateChildControls?

This is how the code was when getting CA2000.

            Dim alwaysVisibleControlExtender As New AjaxControlToolkit.AlwaysVisibleControlExtender
            With alwaysVisibleControlExtender
                .ID = Me.ID & "AlwaysVisibleControlExtender"
                .TargetControlID = m_AccordionAlwaysVisiblePanel.ID
                .VerticalSide = AjaxControlToolkit.VerticalSide.Top
                .HorizontalSide = AjaxControlToolkit.HorizontalSide.Center

using the linqDataSource control programmatically (dynamically)



my scenario is this: I want to use the linqDataSource control to bind data to a gridview for it's efficient built-in paging and sorting features *but* I don't want the data to be bound until the user has input various search parameters, so I need to bind the data from a button click event. Also, the search options will be somewhat complex in that there will be several optional search parameters, via various dropdowns and textboxes, so I can't just declaratively/statically setup all the WHERE parameters on the linqDataSource (at least I'm assuming I can't, or that it may result in poor performance if I do and just assign default values like the everything wildcard '%' for the cases the user doesn't use a particular search parameter). Given that brief description, here is an example of what I'm doing, but with only one WHERE parameter for simplicity, the real code will be adding anywhere from 1 to about 12 WHERE parameters depending on how the user sets the search options in the GUI.

the linqDataSource on the aspx page:

<asp:LinqDataSource ID="ldsMain" runat="server" 
        Select="new (field1, field2, field3, etc..)" 

Persist data in a dynamically populated ListBox in a user control


Hi All,

I am trying to persist data in a dynamically populated ListBox in a user control. Here are the details

I have a user control which contains a a listBox and button. On Page_Load of user control I am populating the ListBox control with some values. On Click of button, I am trying to fetch the values which I have selected in ListBox. Though this seems very simple and straight forward I am unable to fetch values.

My Page_Load Function

void Page_Load(object sender, EventArgs e)










My Click Function

Protected Void Button1_Click(object sender, EventArgs e)


       string strValue = listBox.SelectedValue



I have placed brake point at Page_Load and on click function, I am seeing that the moment the breakpoin

Dynamically load user control without postback


Hi all,

I need urgent help. (c#coding)

In my base page, I have a dropdownlist control which loads different usercontrols on selectedindexchanged event.

While loading these usercontrols, my page postbacks all the page. I used updatepanel but again same problem.

Is there any way to load controls without postback? I Really need help as soon as possible.

Here is my code:

protected void Page_Init(object sender, EventArgs e)
        if (Session["control"] != null)
            string c = Session["control"].ToString();
            if (c == "1")
                iuc = (IlkogretimUC)LoadControl("~/Controls/Ilkogretim.ascx");
                dl.SelectedValue = Session["control"].ToString();
            else if (c == "2")
                luc = (LiseUC)LoadControl("~/Controls/LiseUC.ascx");
                dl.SelectedValue = Session["control"].ToString();
            else if (c == "3")
                youc = (YuksekokulUC)LoadControl("~/Controls/Yuksekokul.ascx");

Want to Create Table Dynamically With text Control in WinForm Csharp

Hello To All... from Many Days i m tryng to create a simple table using csharp in WinForm.Which will include textbox in each cell according the Passed No of Col & Row. but not getting the proper result. Actually i want to trace each cell data and want to save each cell data to data base : eg. in cell 11(1col & 1row) i m having Combobox which having some item list and when the user select the list item the data will save to the database. Regards, Praveen    What is the Key of Life ... Its Sharing Your Thought & Knowledge ...

Can't get ClientID of ASP control in Rendering template

Hi, I've made custom field with its own rendering template. Inside template i need to show/hide some controls, but i cant get ClientID of them. Inside rendering template : <%@ Assembly Name="XXX, Version=, Culture=neutral, PublicKeyToken=72277ea422a3515d" %> <%@ Assembly Name="Microsoft.Web.CommandUI, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Control Language="C#" AutoEventWireup="true&q

How do grab the value from label control into jQuery?

I have the following jQuery code working as it is (passing the value of 'test") but what I want to do is to pass the value of the label control (lblNames). I'm using the label control to collect the uploaded file names. Is there a way?jQuery:$(document).ready(function () {        $("#btnUpload").click(function () {            $("#Notes", top.document).val('test');        });    });ASPX code:<asp:Label ID="lblNames" runat="server" visible="true" ></asp:Label>

Dynamically (on client side) populating data control (repeater) when dropdown item is selected

Hello!I'm currently working on a project and I want to make as much things as possible performing on client side - with as little loading as possible.The project consist of three "main" pages. On one page I use jQuery DataTable plugin which is working great. One page has tabs (using jQuery). I want to put datacontrol (repeater) on this site and when  user selects one item in dropdown, data in repeater loads on client side, without performing the action on server.I wonder if this is possible and if somebody can give me some case to help with?Thanks!I hope I was clear enough. all the best

dynamically add control or register and set visibility

I have a classic asp website that I would like to convert to asp.net. The application is structured such that there is one central page that uses "server.execute" to call a page template and the template uses "server.execute" to call the page functionality. I am thinking that I will create a single asp.net page that sits alongside the current page. I can then slowly convert existing page functionality to usercontrols and add a little logic to redirect to the apropriate page based on the requested page functionality. Should I dynamically add the usercontrol to the page for the page functionality or should I register each control on the page and dynamically change the visibility? We don't add new functionality or update the exisiting functionality very often. Most changes are to the content stored in the database used by the pages.

Control.ClientID with ASP.NET and jQuery - Where am I going wrong?

 Hey everyone.  I've got some jQuery on in a User Control which takes the values from two hidden field and uses them against a jQuery UI Multi-handle Slider and two ASP.net Textboxes.  When I drop this User Control on a Content Page, my control names are renamed from 'txtStartTime' to 'MainContent_UserControl_txtStartTime'...  This is a problem because now I have all the controls hard-coded by ID... but if I want to use the jQuery in another User Control, I'll have to rename everything.  That sucks.This is why I want to learn how to use the Control.ClientID via jQuery to get a controlID.  For instance, how would I change this to use ClientID? $('#MainContent_ucAddEvent_txtStartTime').val(getTime($('#MainContent_ucAddEvent_hfStartTime').val())); $('#MainContent_ucAddEvent_txtEndTime').val(getTime($('#MainContent_ucAddEvent_hfEndTime').val())); //Function GetTime takes t (Ticks/Integer) and converts it to a 00:00:00 format. function getTime(t) { var t_h = Math.floor(t / 3600); var t_m = Math.floor(t / 60) - (t_h * 60); var t_s = t - (t_h * 3600) - (t_m * 60); var f_t = (t_h < 10 ? '0' + t_h : t_h) + ':' + (t_m < 10 ? '0' + t_m : t_m) + ':' + (t_s < 10 ? '0' + t_s : t_s);

Remove a dynamically added ListViewItem from a ListView

Good day, In my xaml I have created a window in my app which contains a  ListView control. I have programmatically added ListViewItems. The ListViewItems each contain a grid. Grid column 0 contains a textblock, Grid column 1 contains a textbox and Grid column 2 contains a button. What I would like to do is click the button in the ListViewItems grid, and remove the ListViewItem in the button is contained from the ListView. Could anyone suggest a way to do this? I would really appreciate any advice, as this is crucial to the feature I am creating.

Dynamically Binding Header of Repeater Control

Hi , I am stuck up into following Issue while binding Repeater control dynamically from database I have repeater control which I want to populate from database.. asp:Repeater id="Repeater1" runat="server">   <HeaderTemplate>      <table border="1">         <tr bgcolor="#ffcc99">            <th><asp:label id="Lname" runat ="server" text = "???"  ></asp:label></th> <th><asp:label id="Fname" runat ="server" text = "???"  ></asp:label></th>         </tr>   </HeaderTemplate>   <ItemTemplate>      <tr bgcolor="#ffcccc">        <td><%# DataBinder.Eval(Container.DataItem, "Col1") %></td>        <td><%# DataBinder.Eval(Container.DataItem, "Col2") %></td>      </tr>   </ItemTemplate>   <FooterTemplate>   </table>   </FooterTemplate></asp:Repeater&g

dynamically created button control click event not firing first time?

HI im creating a button control in page int and im assing a click event for the button control. here the click event is not firing for the first time.can anyone help me with this? here is my code. Button btn = new Button(); btn.ID = "btn"; btn.Click += new EventHandler(btn_Click); Panel1.Controls.Add(btn); Panel1.Controls.Add(new LiteralControl(""));

Pass Javacript to Custom Control with ClientID

Hello,Can someone help me with this.  I have a custom control that I have created.  I want to be able to pass in a Javascript snippet for a callback function.  I am able to do this by passing a string back.  The problem is that in the Javascript, I need to reference another server control that is not related to my custom control.  So, I need to be able to pass in the ClientID of that control for use in the Javascript.  Here is a snippet of what I am trying to do:<asp:CheckBox ID="chkStartDate" runat="server" /><cc:MyNewControl id="MyControl1" runat="server" OnClientOnChangeEvent="toggleCheckBox('<%= chkStartDate.ClientID %>');" /> Now, I realize that '<%= chkStartDate.ClientID %>' will not be parsed.  But, I need it to be parsed so the OnClientOnChangeEvent property of my custom control can take any Javascript for use as a callback. In this instance, I need to pass in the ClientID of the control for the Javascript function to find the control to work with; and this seems to be the one issue that I don't know how to handle. I would appreciate any help offered for this.Thanks in advance.

Dynamically add user control with events


I'm trying to make web form with two placeholders. Firs holder contains user control witch has list of buttons, each button opens different user control to second placeholder.

I get it to show user control in second placeholder but i can't get dynamically created user controls to fire events.

So how i can dynamically create working user control with button click?

Here is how i create those controls:

 Dim toiminot As Control = LoadControl("~/kontrollit/" & field.Value)

"field" is hidden field containing filename of user control to be created.

All help is appreciated!

adding ClientID to server control


hey all,

need help withthis one...

I need to add ClientID of one control to another server control attribute

this line works

<div content="<%= challengesTab_content.ClientID%>"  id="challengesTab">Challenges</div>

but when I add runat=server it doesn't get the clientid and just renders whatever is in content attribute

<div runat="server"  content="<%= challengesTab_content.ClientID%>"  id="challengesTab">Challenges</div>


so is there any way I can do it since I want to access this control on server side :s


Calling a method on a Web User Control that is added ar runtime


Greetings All!


I have a Web Form that uses Master Pages. I only tell you this part so you understand the layers.


On the page, I have a web user control.  I can see public methods on that user control by simply calling  userControlName.PublicMethod();


However, there is a button on this page which generates additional content.  This content is based on a placeholder control and adding additional web user controls :


private void buildSubForms()
            Control subForm;
            // load in the Lesson Topic Sub Form
            subForm = LoadControl("~/siteAssets/controls/ilasLT.ascx");
            // load in the Reference Material Sub Form
            subForm = LoadControl("~/siteAssets/controls/ilasRM.ascx");


Now, on the main form, I want a submit button that will call a public method of each "subForm" that was added at runtime.


I have tried  various forms of Control C = This.Page.Master.FindControl("cpBody").Findcontrol("ctl01")... etc, but can never seen to get the right combination.

I am sure more info

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend