<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Master Pages, Themes and Navigation Controls</title><link>http://forums.asp.net/139.aspx</link><description>Discussions of MasterPages, Themes, and other page-related features. &lt;A href="http://aspadvice.com/SignUp/list.aspx?l=164&amp;amp;c=30" target=_blank&gt;Email List&lt;/A&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/1216159.aspx</link><pubDate>Fri, 03 Mar 2006 17:32:03 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1216159</guid><dc:creator>BrianOConnell</dc:creator><author>BrianOConnell</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1216159.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=1216159</wfw:commentRss><description>The problem with this is that you have to have javascript in your html page. I prefer to use external javascript files and it's an easy way of adhering to standards.&lt;br /&gt;My simple solution to INaming is to create my templates using non server controls. i.e. divs. Originally I thought it would be nice to create one masterpage with for example a 3 column layout using panels but then referencing the id of the control in css is useless (the way most standards cimpliant templates are created) and then using code I could easily change this to a 2 column or 1 column layout. Using divs without runat=server I can correctly reference their id in css and there are workarounds to control the appearance in code.&lt;br /&gt;My new pet hate is inline styles in controls. A Gridview with no formatting will render with a style attribute regardless. Top of my wishlist is for all controls to have a property which allows me to turn off style so that my css files will control formatting completely. Again you can workaround this by creating custom controls that overide the output of the style attribute.&lt;br /&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/1198117.aspx</link><pubDate>Tue, 14 Feb 2006 20:01:55 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1198117</guid><dc:creator>dekale</dc:creator><author>dekale</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1198117.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=1198117</wfw:commentRss><description>For getting the controls using document.getElementById() on the client, you should use the ClientID property of a control, rather than it's ID property. This will solve most of the problems when trying to get the html element the control represents.&lt;br /&gt;&lt;br /&gt;public class MyControl : TextBox&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected override void OnPreRender(EventArgs e)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; "MyControl", &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; @"function SetMyColorOnClick() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var e = document.getElementById('" + this.ClientID + @"').style.backgroundColor = '#FF0000';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }", true);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; this.Attributes.Add("onclick", "SetMyColorOnClick()");&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; base.OnPreRender(e);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;does this help?&lt;br /&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/1197039.aspx</link><pubDate>Mon, 13 Feb 2006 22:55:18 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1197039</guid><dc:creator>Justin Lorenzon</dc:creator><author>Justin Lorenzon</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1197039.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=1197039</wfw:commentRss><description>This has been a real pain for me too. I got around the problem in serverside code by having my page objects implement specific interfaces providing accessor methods for the controls they needed to share with other pages. Takes a bit more work, but it seems like the cleanest way to do it - looking controls up by id seems kind of fragile in principle anyway. &lt;br /&gt;&lt;br /&gt;One place I can't get around it without ugliness however is clientside code; javascript's document.getElementById() is rendered useless by INaming and there's not much I can do about it without writing some kind of messy custom find functions. I'm nervous about coding anything that assumes things about the naming container's id formats because I have no control over how it does it, but writing something that takes into account possibly variable naming conventions makes for some real slow code.&lt;br /&gt;&lt;br /&gt;Bottom line is it's crazy frustrating to not be able to either turn off this naming stuff, use a non-INaming container in place of ContentPlaceHolder, or even have ANY kind of access to the unique string the container is applying to its controls. If anyone knows a way of doing any of these things, please yell out.&lt;br /&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/994258.aspx</link><pubDate>Thu, 21 Jul 2005 00:30:22 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:994258</guid><dc:creator>dekale</dc:creator><author>dekale</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/994258.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=994258</wfw:commentRss><description>I'd like to come back on the code I posted earlier in this Thread. The
code isn't good, so I baked some other code and I'd like to share it
with you all.&lt;br&gt;
&lt;br&gt;
First of all, what is wrong with the code above. Well the function
searches for Control ID's using the Page's Request.Form object. The
Form however, does NOT contain ID's of control's that have their
enabled property set to false (or disabled attribute set at html side)&lt;span&gt;, while these Controls
could still be of importance.&lt;/span&gt;&lt;br&gt;
&lt;br&gt;
After I while I came to the conclusion (but please correct me if I'm
wrong) that there isn't a 10 line solution to this problem. You'll have
to go through the complete Control tree by hand. And by hand &lt;span&gt;means&lt;/span&gt;:
Building you're own copy of the tree and search it recursively. So
behold the ControlTree class.&lt;br&gt;
&lt;br&gt;/// &amp;lt;summary&amp;gt;Builds up a tree of &amp;lt;see cref="Control"/&amp;gt;
objects and enables specific searches through the tree.&amp;lt;/summary&amp;gt;&lt;br&gt;
class ControlTree&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private ControlCollection _collection;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; private List&amp;lt;ControlTree&amp;gt; _childNodes = new List&amp;lt;ControlTree&amp;gt;();&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;Constructor&amp;lt;/summary&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="collection"&amp;gt;The &amp;lt;see
cref="System.Web.UI.ControlCollection"/&amp;gt; object to start the tree
with&amp;lt;/param&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public ControlTree(ControlCollection collection)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; this._collection = collection;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (Control control in collection)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (control != null &amp;amp;&amp;amp; control.Controls != null) &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; this._childNodes.Add(new
ControlTree(control.Controls));&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;Finding and returning the controls who's ID ends with the id parameter.&amp;lt;/summary&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="id"&amp;gt;The *id to search for.&amp;lt;/param&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;The matching control or null (Nothing in VB) when no control is found.&amp;lt;/returns&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public Control FindControlEndingWith(string id)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Control match = null; // The reference to the matching control&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (Control control in _collection)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (control !=
null &amp;amp;&amp;amp; control.ID != null &amp;amp;&amp;amp; control.ID.EndsWith(id))&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (match != null) throw new Exception("Duplicate
control found.");&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; match = control; // We've got a match&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (ControlTree node in this._childNodes)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Control control = node.FindControlEndingWith(id);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (control != null)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (match != null) throw new Exception("Duplicate
control found.");&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; match = control; // We've got a match&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return match;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
You initialize the tree with the Page's Controls object (a
ControlCollection). The old function that I wrote for my BasePage now
looks like this:&lt;br&gt;
&lt;br&gt;
private ControlTree _controlTree;&lt;br&gt;
public Control FindControlEndingWith(string id)&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (this._controlTree == null) this._controlTree = new ControlTree(this.Controls);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return this._controlTree.FindControlEndingWith(id);&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
A strong warning here, because I assume here that that Page's control
tree will never change after calling FindControlEndingWith(id) for the
first time. When it does, you will have to &lt;span&gt;recreated &lt;/span&gt;the ControlTree on
every call (and that can cause performance to drop), or find a smart
way to indicate if the tree has changed.&lt;br&gt;

&lt;br&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/977237.aspx</link><pubDate>Mon, 04 Jul 2005 18:14:03 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:977237</guid><dc:creator>BrianOConnell</dc:creator><author>BrianOConnell</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/977237.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=977237</wfw:commentRss><description>I made a suggestion a while ago about the master pages and they say they will take it into consideration. As you say for now tell your designers to use class names. They are bound to see how good asp.net is&amp;nbsp;with that kind of restriction.&amp;nbsp;Anyway good to see I'm not the only one.</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/977184.aspx</link><pubDate>Mon, 04 Jul 2005 17:19:16 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:977184</guid><dc:creator>Dave Sussman</dc:creator><author>Dave Sussman</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/977184.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=977184</wfw:commentRss><description>I only reported the CSS issues - only one has appeared so far&lt;BR&gt;&lt;BR&gt;&lt;A href="http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackid=0ca5f19f-1ad6-48ef-a7c6-3358a534602d"&gt;http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackid=0ca5f19f-1ad6-48ef-a7c6-3358a534602d&lt;/A&gt;&lt;BR&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/977159.aspx</link><pubDate>Mon, 04 Jul 2005 16:43:08 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:977159</guid><dc:creator>dekale</dc:creator><author>dekale</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/977159.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=977159</wfw:commentRss><description>Well, and I've got now a nasty solution for my INaming-problem. Because I
know my Controls must have a unique id, I can search for a control
ending with that id. My own version of the Page's FindControl function
looks like this.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; public System.Web.UI.Control FindControlEndingWith(string id)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.Web.UI.Control control = null;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; foreach (string key in this.Request.Form)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (key.EndsWith(id) == true)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (control != null) throw new
System.Data.DuplicateNameException(&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; "Duplicate
control has been found. Both the controls " +&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; control.ID + "
and " + key + " end with " + id + ".");&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; control = this.FindControl(key);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return control;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
p.s. Can you post the link to your suggestion in the feedback center, so I can track it.&lt;br&gt;
&lt;br&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/977138.aspx</link><pubDate>Mon, 04 Jul 2005 16:15:39 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:977138</guid><dc:creator>Dave Sussman</dc:creator><author>Dave Sussman</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/977138.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=977138</wfw:commentRss><description>You're right, I've now added them as suggestions in the feedback centre.</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/976909.aspx</link><pubDate>Mon, 04 Jul 2005 10:32:05 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:976909</guid><dc:creator>dekale</dc:creator><author>dekale</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/976909.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=976909</wfw:commentRss><description>Are these issues known to Microsoft, or should we make a &lt;span&gt;suggestion &lt;/span&gt;in the &lt;a href="http://lab.msdn.microsoft.com/productfeedback/default.aspx"&gt;MSDN Product Feedback Center&lt;/a&gt;&lt;br&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/976823.aspx</link><pubDate>Mon, 04 Jul 2005 08:22:56 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:976823</guid><dc:creator>Dave Sussman</dc:creator><author>Dave Sussman</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/976823.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=976823</wfw:commentRss><description>Actually this is more of an issue than you realise. Some of the controls themselves have odd behaviour. For example, why does the CheckBox get wrapped in a span when you add a CssClass? Why, when customising the layout of a Login control using the LayoutTemplate does your content in the template get wrapped within a table (a 1 cell table)? These are things that really drive me crazy.&lt;BR&gt;&lt;BR&gt;For the renaming of controls your best bet is to use class names rather than IDs.&lt;BR&gt;&lt;BR&gt;Dave</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/976427.aspx</link><pubDate>Sun, 03 Jul 2005 13:49:02 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:976427</guid><dc:creator>dekale</dc:creator><author>dekale</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/976427.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=976427</wfw:commentRss><description>Brian,&lt;br&gt;
&lt;br&gt;
I've having the same problems with the INamingContainer and the
MasterPage. I'm generating my interface from the database and so I can
give my controls an unique id. The problem here is that the MasterPage
changes every unique id's to an even more uniqueness. So now I can't find
my controls anymore (using the Request.Form), because they're name has changed.&lt;br&gt;
&lt;br&gt;
The MasterPage shouldn't be implemented with the INamingContainer
interface in the first way. The ContentPlaceholder control that is used
in the MasterPage does ALREADY implement the INamingContainer
interface. So there is no need for MasterPage to implement it.&lt;br&gt;
&lt;br&gt;
Kale&lt;br&gt;
&lt;br&gt;</description></item><item><title>Re: Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/950576.aspx</link><pubDate>Wed, 08 Jun 2005 22:03:41 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:950576</guid><dc:creator>BrianOConnell</dc:creator><author>BrianOConnell</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/950576.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=950576</wfw:commentRss><description>Wow no matter what I say nobody gives two you know whats about this. Amazing after the fantastic job the asp.net team has done with support for standards and accesability that nobody seems to care that designers will be jumping through hoops to get their # css identifiers to work. It's seems so straight-forward to hand over the responsibility to the developer to ensure no controls will have the same id or at least to give them the option to turn off the functionality of the inaming container. Maybe theres a simple way around this but I would have thought someone might have replied to this post if there was. Dissappointingly nobody cares. Oh well.</description></item><item><title>Masterpages and the INamingContainer</title><link>http://forums.asp.net/thread/943447.aspx</link><pubDate>Wed, 01 Jun 2005 18:23:10 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:943447</guid><dc:creator>BrianOConnell</dc:creator><author>BrianOConnell</author><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/943447.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=139&amp;PostID=943447</wfw:commentRss><description>I've asked before but I'm wondering what is the thinking is&amp;nbsp;in renaming controls in a masterpage. This works against designers and their css files that reference specific ids of controls. Is there a way to stop this happening? I can't help thinking it would be better if it did not rename controls and just warned developer in the ide if they have 2 controls of the same id.</description></item></channel></rss>