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

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

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>)

Posted By:      Posted Date: August 21, 2010    Points: 0   Category :ASP.Net

Hey guys

I came across this bug using while trying to implement a sitemap

Line 147:						Panel panel = new Panel();
Line 148:						panel.Controls.Add(_viewState);
Line 149:						Page.Form.Controls.Add(panel);
Line 150:						string script = "document.getElementById('" + _viewState.ClientID + "').value = GetViewState__AspNetTreeView('" + Extender.MakeChildId("UL") + "');";
Line 151:						Page.ClientScript.RegisterOnSubmitStatement(typeof(TreeViewAdapter), _viewState.ClientID, script);

[HttpException (0x80004005): The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).]
   System.Web.UI.ControlCollection.Add(Control child) +8696951
   CSSFriendly.TreeViewAdapter.SaveAdapterViewState() in E:\wwwroot\ThirdParty\CSSFriendly\CSSFriendly_24242\CSSFriendly\TreeViewAdapter.cs:149
   System.Web.UI.Control.SaveViewStateRecursive(ViewStateMode inheritedMode) +8901848
   System.Web.UI.Control.SaveViewStateRecursive(ViewStateMode inheritedMode) +148
   System.Web.UI.Control.SaveViewStateRecursive(ViewStateMode inheritedMode) +148
   System.Web.UI.Control.SaveViewStateRecursive(ViewStateMode inheritedMode) +148

View Complete Post

More Related Resource Links

Using tabs from the AjaxControlToolkit causes error: ...control contains code blocks (i.e. <% ... %>


I'm getting the error:

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).

When attempting to add the tabs from the AjaxControlToolkit.  A little background..Theres an existing aspx page in a microsite which used the accordion control and the tabbed control ...I need to modify this page to use a different masterpage. 

The original site was .Net Framework 2.0 and the page in question used AjaxControlToolkit 1.0. which I manually installed originally.  Some of the site has been further developed using the .Net Framework 3.5.  (Come with AjaxControlToolkit) Now I have come to update this aspx page and I get the error above.

I have narrowed the down to the TabContainer (I think)  Does anyone have any experience with this sort of problem?  Also what version of the AjaxControlToolkit should be with the .Net Framework 3.5? I have 1.0.20229.20821. 

I also tried to browse to the AjaxControlToolkit.dll to add the tools to the tool box as they're missing... thinking this may be an indicator as to why it wasn't working. I get the error: 'There was an error loading types from assembly C:\inetpub\wwwroot\project\Bin\AjaxControlToolkit.dll Could not load file or assembly 'System.Web.Extensions. Version=

Custom Control Controls Collection

I have an ASP.NET custom control with several asp:panel controls that have various questions for users in them. When the control loads I need to set a Session object to the default panel (first question). This worked when I had the objects and code in a web form, but I moved them to a custom web control, and now when I try to access that control in the Load event of the custom control it says the default panel control is null. It seems that the controls are not created when the Load event is firing. Evidently the order of loading controls is different between web forms and custom controls. Can someone explain to me where the controls inside the custom control will become available to use? Thanks for the help! 

The Controls collection cannot be modified


Salam to all,

when i am trying to use AjaxTabContro in my website,

when i Drag and drop Tab Control to my user control in my aspx page, the i run my aspx page, the following error appear to me:

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).

this is my code:

<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="Plex" %>

<Plex:TabContainer ID="NewsTabContainer" CssClass="Plex__Tab"  runat="server" ActiveTabIndex="0" Visible="false"  >
    <Plex:TabPanel runat="server" ID="TabPanel1" Width="100%" Height="100%"  >


i didnot make any server side code, just when using the above HTML code the error appears,

also when i remove the TabContainer Control from my user control, the page working with no issue !!!



Accessing the different controls inside a GridView control

how we can access a particular control which resides inside a GridView control. In this article I will show you how you can access different controls inside a GridView control. We will see how we can access a TextBox control, a DropDownList control and a ListBox control. If you are working with ASP.NET 1.X then you might want to check out my article Accessing Different Controls Inside a DataGrid.

How to install the Css Friendly Control Adapter Source Code


Hi guys really new to ASP.NET I was trying to install the CSS Friendly control adapter but for some reason the instructions on the website seems outdated. I downloaded all the files (Source Code, DLL, Browser) I believe I need to add the DLL file to my website's Bin folder and the Browser file to the APP_Browsers folder is this correct? After I place this files how to I get it working? what do I have to do?

Also if I want to create a new DLL file from the Source code how do I do these? I opened the web-site with Visual Studio 2008 and I can see all the files in the solution explorer? But how do I compile this to a DLL file? I tried doing a build solution but all I get is an .sln file???

Any help would be greatly appreciated

Thanks in advance


Toolbox: Microsoft Chart Controls, Visual Studio Automatic Code Snippets, And More


In this installment we look at the Microsoft Chart Controls; Snippet Designer, a free, add-in for Visual Studio 2008 for creating and editing Code Snippets; refactoring SQL applications; and this month's favorite blog.

Scott Mitchell

MSDN Magazine April 2009

Wicked Code: Craft Custom Controls for Silverlight 2


If you're unfamiliar with Windows Presentation Foundation (WPF), building that first Silverlight custom control can be a daunting experience. This article walks through the process.

Jeff Prosise

MSDN Magazine August 2008

Extreme ASP.NET: A Little Bit of Control for Your Controls


Having worked for so many years designing and developing ASP. NET while at Microsoft, it's exciting now to have a venue in which to talk about it. In this new column, Extreme ASP. NET, I'll discuss and demonstrate time-tested techniques and approaches to implementing high-performance, reliable, secure, and user-friendly Web applications with ASP.

Rob Howard

MSDN Magazine May 2005

Virtual Source Code Control Systems: Promoting and Managing Projects using Visual SourceSafe


Source code control systems like Microsoft Visual SourceSafe can simplify just about any development project, and make it easier for your code to move safely among individual programmers, development teams, and project stages. Visual SourceSafe provides an object model that you can use as the basis of your own customized source code control environment. To give you an idea of what is possible, we'll walk you through the elements of a browser-based source code control system built with Visual SourceSafe, ASP, and VBScript. This simple system lets members of your team build, label, and promote individual files or entire projects, and to reverse promotions.

Ken Ramirez

MSDN Magazine May 2000

Finding a control from a control collection



I'm trying to write a bit of code that will format all the numeric values in lables in my gridview. here's what i am doing right now:

On the RowDataBound Event, i create a row object for the row that is currently being bound.
then i go use the FindControl method to grab each label by name.

Problem is there's too many columns in this table and i really dont wnat to have to type it all out. Here's an example of what i am currently doing

' Get row being bound
Dim myRow = e.Row

' Get labes to be formatted
Dim lblMunicipalIncineration = CType(myRow.FindControl("lblMunicipalIncineration"), Label)

' format labels
If lblMunicipalIncineration IsNot Nothing Then
    If Not String.IsNullOrEmpty(lblMunicipalIncineration.Text) Then
        lblMunicipalIncineration.Text = FormatNumber(lblMunicipalIncineration.Text, 0, TriState.False, TriState.False, TriState.True)
    End If
End If

Can i use myRow.Controls to grab a list of all the controls and then somehow get a list of all labels in the collection and then use a for loop to go through and format each label?

User Controls and Control Extenders


Two separate questions, but sufficiently intertwined that I'm going to try the two together....

Firstly - User Controls and Behaviours

I have a User Control which contains a few visual controls.  I am attaching some behaviours by using GetScriptDescriptors and am passing some JavaScript to the browser using GetScriptReferences.  That is all rock solid and working well.  However, when developing, I did discover that I couldn't attach the behaviours to the User Control itself - not surprising as rendering a User Control does not create a DOM element which represents the actual control.  So, I have attached my behaviours to a "random" TextBox within the User Control. 

So - first question, is there a better way to do that?  For example, should I always be rendering a SPAN as an element to surround the control?  Not sure what that would do to the robustness of the rendering.  What is the right way to attach a behaviour to a User Control.

Secondly - Accessing those same Behaviours later

Assume I have placed a User Control on the page.  That User Control exposes a Property (actually a Javascript Function of course) which does "something" to the control - for the sake of example we'll say that the function is set_Border(colour). 

How do I change the default HTML code for a collection of lists and views


I have modified the html display code of some lists and content query web parts in SharePoint designer.  This works well when modifying a few lists, but I have many lists and different views with these many lists.

Is there a way to modify the template code for a site so that all my lists, views and CQWPs display identically with my modified code?  Managing these individually is not practical.

Again, Getting control inside datatemplate from code behind

HI, All: This problem comes back to bite me again. I had a similar problem before but I changed the customer control to user control and define the click event in the xaml. But this time I have to stick with the customer control. I searched the internet and there are a lot of examples but in my situation, I still got null object. I have a CUSTOMER control which derives from treeview. The hierachicalDataTemplate for the treeview is following:     <HierarchicalDataTemplate         x:Key="CheckBoxItemTemplate"         ItemsSource="{Binding SubFolder}"         >         <StackPanel Orientation="Horizontal">             <CheckBox             x:Name="PART_CheckBox"             Focusable="False"             IsChecked="{Binding IsSelected}"             VerticalAlignment="Center"                 &nbs

Login control - Controls do not exist in current context

Hi all,Trying to set up the Login control as a User control, but none of the controls exist in the current context?None of my code below is recognised? What's going on here please? I've rebuilt the solution many times.if (Membership.ValidateUser(this.UserName.Text, this.Password.Text))        {            FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);        }        else        {             Msg.Text = "Login failed. Please check your user name and password and try again.";        }

Collection was modified; enumeration operation might not execute.

Hi,            i'm trying to update my dataset. I want to finad a particaular value from dataset, and bind it to exch and every record of Dataset The code i'm using to update the dataset is: Dap.SelectCommand = Cmd Dap.Fill(DS)Dim pRow As DataRow For Each pRow In DS.Tables(0).RowsField1 = pRow("StoreName").ToString() Field2 = Convert.ToDouble(pRow("abc")) + Convert.ToDouble(pRow("sds")) + Convert.ToDouble(pRow("sdczs")) - ((Convert.ToDouble(pRow("xcvx"))) + (Convert.ToDouble(pRow("xcv"))) + (Convert.ToDouble(pRow("xvc"))))Dim row As DataRow = DS.Tables(0).NewRow() row("Field2") = MarginDS.Tables(0).Rows.Add(row) DS.AcceptChanges() Dap.Update(DS) ' ================================== ' ===> Bind Values To Web Chart <=== ' ================================== WebChartControl1.Visible = True WebChartControl1.DataSource = DS WebChartControl1.SeriesDataMember = "Field1" WebChartControl1.Series(0).ArgumentDataMember = "Field1" WebChartControl1.Series(0).ValueDataMembers.Item(0) = "Field2" WebChartControl1.DataBind() Next When i tried to execute the code i got the error saying  'Collection was modified; enumeration operation might not execute.' Can you pl .help in fixing the pr

Controls within Base Control are Not initialized

I have an ASP.net control that contains a grid (protected member variable). Grid is populated from a function in the control. I have derived a new user control from this control without any control in it. I added additional functionality to populate grid and called base class function to do further operation on the grid.When I run my code, I get the null reference exception on grid object in the base control.Any idea why this might happen? Am I missing something in control inheritance? at what point do inner controls get created? 

Removing a (child) user control from an observable collection

Hey all, so I have an ObservableCollection of UserControls.  These user controls have their own xaml and each of these has some type of "Close" button so it would be removed from the ObservableCollection. A groupbox is binded to the ObservableCollection so it would show all the UserControls.  When a user clicks on the "Close" button, the user control is removed from the ObservableCollection and thus, the groupbox.  How can I do this?  I've tried something like   (this .Parent as ObservableCollection<asdf>).Remove(this );   where asdf is a UserControl but I get a bunch of compiler errors.
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