I have yet to successfully test your patch. Hacking it together on windows gets me this (this is without using your custom controls. just the vanilla Default/master page):
[HttpException (0x80004005): Login1: LayoutTemplate does not contain an IEditableTextControl with ID UserName for the username.] System.Web.UI.WebControls.GenericContainer`1.FindControl(String id, Boolean required, String errorResourceKey) +1716147 System.Web.UI.WebControls.Login.get_UserNameInternal() +91 System.Web.UI.WebControls.Login.SetEditableChildProperties() +26 System.Web.UI.WebControls.Login.CreateChildControls() +179 System.Web.UI.Control.EnsureChildControls() +87 System.Web.UI.Control.PreRenderRecursiveInternal() +41 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Control.PreRenderRecursiveInternal() +161 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1360 Chris On Sat, 2006-04-29 at 23:16 -0700, Andrew Skiba wrote: > Hello, Chris. > > So can I commit these patches yet? > > Thank you. > Andrew. > > > -----Original Message----- > > From: Chris Toshok [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, April 25, 2006 20:51 > > To: Andrew Skiba > > Cc: mono-devel-list@lists.ximian.com > > Subject: Re: [WARNING : A/V UNSCANNABLE] RE: [Mono-dev] > > System.Web.UI.Pagepatch > > > > On Tue, 2006-04-25 at 02:16 -0700, Andrew Skiba wrote: > > > > I'd like to see the test used for this as well. > > > > > > Did you see the standalone test that I sent yesterday? For > > > convenience, I attach it to this message, too. It covers > > the following patches: > > > > > > ApplyTheme.patch > > > Page.Web.Config.patch > > > PageTheme.patch > > > > > > > At first blush the theme change looks ok, but I really don't like > > > > the idea of adding the ApplyTheme behavior to OnInit. > > > > Unless, of course, this is what actually happens in MS's > > > > implementation. > > > > > > It's not OnInit, it's in CreateChildControls flow. To > > figure that out > > > in MS implementation I made this: > > > > ah, sorry - I wasn't looking at the line numbers, I just > > searched for the surrounding patch context. > > > > > public class MyLogin:Login > > > { > > > protected override void OnInit (EventArgs e) > > > { > > > Trace.WriteLine ("before Login.OnInit"); > > > base.OnInit (e); > > > Trace.WriteLine ("after Login.OnInit"); > > > } > > > protected override void AddedControl > > (System.Web.UI.Control control, > > > int index) > > > { > > > Trace.WriteLine ("before Login.AddedControl"); > > > base.AddedControl (control, index); > > > Trace.WriteLine ("after Login.AddedControl"); > > > } > > > > > > protected override void CreateChildControls() > > > { > > > Trace.WriteLine ("before > > > Login.CreateChildControls"); > > > base.CreateChildControls (); > > > Trace.WriteLine ("after > > > Login.CreateChildControls"); > > > } > > > } > > > > > > public class MyImageButton:ImageButton > > > { > > > protected override void OnInit (EventArgs e) > > > { > > > Trace.WriteLine ("ImageButton.OnInit"); > > > base.OnInit (e); > > > } > > > public override void ApplyStyleSheetSkin > > (System.Web.UI.Page page) > > > { > > > Trace.WriteLine > > > ("ImageButton.ApplyStyleSheetSkin"); > > > base.ApplyStyleSheetSkin (page); > > > } > > > > > > public override string ImageUrl > > > { > > > get > > > { > > > return base.ImageUrl; > > > } > > > set > > > { > > > Trace.WriteLine ("Set > > > ImageButton.ImageURL"); > > > base.ImageUrl = value; > > > } > > > } > > > } > > > > > > and changed in aspx <asp:login> and <asp:imagebutton> to > > <my:MyLogin> > > > and <my:MyImageButton> > > > > > > the output looked like: > > > > > > before Login.OnInit > > > after Login.OnInit > > > before Login.CreateChildControls > > > ImageButton.ApplyStyleSheetSkin > > > Set ImageButton.ImageURL > > > before Login.AddedControl > > > ImageButton.OnInit > > > after Login.AddedControl > > > after Login.CreateChildControls > > > > > > > > > > > Also, the master page change doesn't seem necessary to me, in the > > > > scope of the greater change. The controls will have their OnInit > > > > methods's called properly when they're added to the > > already Init'ed > > > > controls. > > > > > > If you do ApplyMasterPage after InitRecursive, then > > elements defined > > > on master page do not get their themes. Just try the > > standalone test I > > > sent, the difference is clear. > > > > My comment was made under the assumption that the ApplyTheme > > call was in OnInit (as above.) > > > > I'll take a look at this further tonight probably. > > > > Chris > > > _______________________________________________ > Mono-devel-list mailing list > Mono-devel-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-devel-list _______________________________________________ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list