Monthly Archives: July 2005

TDD Workshop in Montreal August 16th

GUVSM, one of the .NET User Groups in Montreal, is hosting a full day workshop on Test Driven Development on Tueday August 16th. The workshop will be taught be Scott Bellware, from Austin Texas, who has been doing TDD training for a while and is a passionate advocate of TDD. There will also be one section of the workshop taught by Mario Cardinal (one of the new Architecture MVPs) and Etienne Tremblay who has been doing a ton of work with Microsoft on VS 2005 Team System. They will do their session in English also.
 
The workshop is only $50 and even includes an MSPress book on OOP in .NET.
 
There is only room for 30 and as of Friday, it was half full.
 
More details here on Guy Barrette’s blog (http://weblogs.asp.net/guybarrette/archive/2005/07/15/419510.aspx) and at www.guvsm.net.
 
The workshop will be in English.
 
If you can swing the day, I’d highly recommend it!


www.acehaid.org

The $10million tabletPC promotion idea…

Loren Heiny asked “if you have $10million to promote TabletPCs, how would you do it.” Robert Scoble suggests buying 5 tabletpcs for every airline so people can play with them while they are flying. Oddly enough, Don Kiely emailed me the other day to tell me that Lenovo (the makers of the new ThinkPad TabletPC) had a kiosk at one of the airports that he flew through on his latest multi-user group INETA trip and he got to play with it for a while (and was hooked!). It makes perfect sense, all of our best stories about showing Tablets to strangers are those which happened while we were in airports or airplanes.

There is a growing list of comments to Loren’s original post.

www.acehaid.org

In the trenches thoughts and tips on starting a user group

Jim Holmes is in the process of starting a .net group in Dayton, Ohio (Dayton .NET Developers Group). He has written down a list of things he is doing as tips for others starting user groups. The tips are great. It is important to remember that every group is different and everyone’s approach is different, but there are definitely a lot of things that many groups can share with each other. As Jim points out, it’s a lot of work and you better know what you are committing yourself to! I know that when I started VTdotNET, I wasn’t nearly as organized as Jim is in starting up this group in Dayton. Somehow I’ve made it work, but I do believe that (outside of the phone call thing – just not for me, but may work for others) it is all great. One of the great resources Jim has in his area is Drew Robbins who went from User Group Leader to Regional Director to MSDN Developer Evangelist! And it was through Drew that I found his post.

www.acehaid.org

Keeping up with the Joneses #1

I’m going to start a new category. It is called “Keeping up with the Joneses”.

Here I will get to vent for each time I see someone working with a technology that I haven’t had the time to play with yet. Every time I see someone writing about their Indigo or Avalon projects, there is a little demon on my shoulder whispering “you are SUCH a loser and a dumb-ass, cause you don’t even know how to do that yet!” Of course it’s all very silly of me. I spend a lot of time on certain technologies and who can do it all? And the folks doing those Avalon projects are probably focused on Avalon and not working with a lot of other technologies either. I keep telling myself that, anyway.

So today’s Keeping up with the Joneses is:

www.acehaid.org

Web UI trick with ImageButtons inside of Data Repeaters

[this is for v 1.1]

On a web page I have an ImageButton with some server side action to take place when it is clicked. But there are scenarios where I would like it to be disabled. The Enabled property disables any command action, but you still get the “index finger” cursor when you hover over the icon. I didn’t even want that. I think that’s pretty confusing because it still looks like the user can *do* something.

To make it more interesting, I have this happening inside of a Data Repeater. Here is how I got this to work.

Just after the ImageButton, I placed an <asp:image> with the same image as it’s source. The default “visible” parameter on this is False. Since I am doing this in a Repeater, I am hand coding it, so remember to add runat=server. In my case, I actually have a different image, so it is extra obvious to the user that the state of the icon has changed.

By making the visible property false, not only is the image not visible, but it does not take up any real estate on the page.

<asp:Imagebutton id=”CheckOut” runat=”server” ImageUrl=”images/checkout_red.gif” AlternateText=”Check Out”  CommandName=”CheckOut” />
<asp:Image ID=”CheckOutNoLink” Runat=server ImageUrl=”images/checkout_small.gif” Visible=False/>

In the repeaters “ItemCommand” event, when the state calls for the inactive image I just flip the Imagebutton’s visible property to false and the Image control’s visible property to true. Again, by making the Imagebutton not visible, it no longer takes up the space on the page, and the Image slides over to fill in the hole that the Imagebutton left behind.

              CType(e.Item.FindControl(“CheckOutNoLink”), System.Web.UI.WebControls.Image).Visible = True
              CType(e.Item.FindControl(“CheckOut”), System.Web.UI.WebControls.Image).Visible = False

 

I’m sure this has been done plenty of times before, but I didn’t intuit the solution at first and couldn’t find anything on google, so here ya go!



www.acehaid.org