by Ged Mead
I've been away on the road for a couple of weeks. When I arrived back home on Tuesday, one of the things waiting for me in the small stack of mail that had arrived in my absence were a set of discs containing the latest Beta 2 version of Visual Studio 2005.
Should I take the plunge, I wondered? I checked the package carefully to see if it had a "WARNING! Beta versions can seriously damage your sanity" label stuck on it somewhere. But no, there were no such dire warnings to be found. Maybe it was safe to continue?
But if I opened the package and installed it, would I shrink so small that I wouldn't be able to reach the keyboard? Goodness knows, my brain seems to have shrivelled to half its size since I first set out on the .NET adventure almost three years ago. I couldn't afford to damage any of the few remaining cells that still do work.
Or worse still, maybe I'd grow and grow until my head just simply explode, having been filled to bursting point with the welter of super new improvements that have been crammed into the latest version.
Decisions, decisions...
Seriously though, I've been looking forward to having a play with the latest version and I hope to be able to try out some of the new features - and the not-so-new features, too - in the very near future. The "Not-so-new" features of course including the reinstatement of some tried and trusted friends from VB6, finally included in .NET after much gnashing of teeth and shaking of large sticks from a number of disenfranchised (and often disappointed) VB Classic Upgraders.
I see with interest that one of the key features that has been added back in is the Default Instance of Windows Forms. Judging by the number of people who have Googled their way to the multiple forms articles on our DevCity articles page, the loss of this feature seems to have been one of the biggest initial hurdles for many VB6 upgraders. From the many feedback comments on the article, it's clear this relatively simple but very fundamental activity had left several folks totally mystified.
It's a dilemma for the VS development Team, of course. Those handy-dandy default instances made multiple form handling a doddle in Classic VB, but were really a bit of a politically incorrect OOP fudge to make life easier for developers. Bringing them back in to VB.NET in this next version will have a small negative impact on VB.NET's fully OOP language credentials, but it will probably warm a few chilly VB Classic hearts as people continue to make the change from VB6 to VB.NET. According to the old proverb, familiarity breeds contempt, by my goodness it doesn't half make programming easier if you can carry forward core concepts you've used for years!
Probably based on the same kind of reasoning, it's good to see that the VB 2005 team have removed another of the VB6-VB.NET upgrade gotchas. This one being the feature in VB.NET where closing the StartUp Form automatically closes the application down. Once again, the reasoning for doing this was well-intentioned and is easily controlled by use of an appropriate Sub Main, but - as with the Default Instance scenario - it seemed to generate a lot more frustration for upgraders than had been expected.
So now VB6ers changing to .NET will be pleased to see that they have ready-made choices of how closing a StartUp form will affect the closing of the application, i.e. when the StartUp form closes or when the last form closes (as with VB6). Plus there are several handy ways of applying developer coded control, e.g. by using Application.Exit to force the closure or by watching for the Application.ApplicationExit event and taking appropriate action.
And finally it's nice to see that the long lost Masked Edit Control has made a reappearance, now in the guise of the MaskedTextBox. I'll be interested to see what features have been carried over from the original concept, plus any new ones.
So, once I've caught up with my backlog of mail, VS 2005 Beta 2 installation is next on the agenda. No doubt I'll be keeping diary readers up to date with the success (or lack of it) in future issues. In the meantime, I'll get the decks cleared and ready for the VB.NET version of the Mad Coders Tea Party.
It's certainly going to be an Adventure in Wonderland. Tea, anyone?
XTab in Wonderland
- Junior (Ged Mead aka XTab, xtab@vbcity.com)