I went to a friend’s bachelor party this past weekend. It was near Crandon, WI and about 10-15 people showed up. Overall, it was a good time and I have to admit that even the drive up there was enjoyable. I took some (probably too many) pictures and they should get posted at some point in the near future. One thing that I can’t get over is that it was REALLY cold, for August. The maple trees were even changing colors, which seems about a month early to me. Outside of that, I’ve been pretty busy at work. I put together a nice custom user control that uses callbacks to dynamically update visual objects on the screen (without posting back). It is designed for .Net 1.x and seems to work pretty well. Under the covers, I was able to create a base control class that allows you to use both synchronous and asynchronous callbacks to do your bidding… I am currently working on a wizard type control. I wasn’t clear how ITemplate interfaces played in with controls, but I am now. They’re useful if you create/extend a datalist type control and want to create an html template (defined in the control’s view) for each data item. The thing that I was looking for, however, was the ControlBuilder class. When you override GetChildControlType from a class that inherits ControlBuilder, you can define how to process child objects. Basically, this gives you finer control than the ParseChildren(true) attribute. To make a long story short, a developer can use my control somewhat as follows: It seems interesting that these types of topics were never touched on the MS cert exam that I took. I’m starting to believe that the development cert exams just touch the technology and basically show that you are a step above a novice. Maybe I just took an easier test, though 🙂
<uc1:wizard id=”mywizard” runat=”server”>
<wizardpage id=”page1″ src=”~/page1.ascx” … />
<wizardpage id=”page2″ src=”~/page2.ascx” … />
</uc1:wizard>