June 2008 - Posts

I know, I'm a little late on this announcement - but this has been one crazy summer!  Ok, we've officially only been in summer for less that a week, but considering the temp was 98 degrees when I got back from TechEd a couple of weeks ago, I say summer has been with us for a while. 

Anyway, back to the release.. After another 4 month cycle, there's some really great stuff that has been added to NetAdvantage for .NET.  Here's a quick rundown of the new features. 


Windows Forms


This extender control can be used to perform validations on input fields in your app.  Classically seen in ASP.NET applications, validators make it quick and easy to accomplish certain scenarios while improving the overall user experience by providing real-time feedback. 


In the example above (included in the samples SDK) I've demonstrated using a balloon tip style message to show that this was a required field. 


Row Edit Template for WinGrid

Editing tabular data doesn't always have to be reminiscent of your favorite spreadsheet application.   You can use the Row Edit Template to modify the editing experience of a grid row.  Because this is a template, you have total control over appearance and functionality.  The edit template can be displayed directly beneath a row (as shown in the image below), or it can be 'detached' and positioned exactly where you'd like.  The net effect... happy users.



Suggest mode Typeahead

Typeahead has evolved through the years..  I'm sure you can remember the days when a dropdown first allowed you to type in a letter and scrolled through the list automatically for you.  Next came multi-character typeahead, where words would actually be completed for you.  So how do you make that better?  Easily - live filter the results based on the characters being typed in.  Using the new Suggest AutoComplete mode, you can provide your users with a much improved interface for picking from a list of values.  This behavior is commonly seen today with search engines, where they will begin to show you search suggestions as you type. 


In the example above, typing "A" into the combobox the user is prompted with the 3 choices displayed in the dropdown.


Visual Studio 2008 Docking Indicators

For those of you who have moved up to VS2008 (and I'd recommend that move to anyone!), you've likely noticed that Microsoft updated the docking indicators once more.  But fear not, we've added the 2008 style to our DockManager as seen below.






Ever need to show hierarchical data in a visual way?  That's the sole purpose of the TreeMap.  If you're not familiar with TreeMap, you can get a great explanation and some common examples from Wikipedia.  An example of a TreeMap is shown below.  BTW, this new visualization type has been added to the UltraChart (win and web).




I personally, am tired of textboxes.  It seems that every time an application wants me to enter data, I have to use a plain old standard textbox.  Enter the WebSlider.  You can use the WebSlider to enter a single value, or a 2 value range.  And the user never has to type in a single character.  The 'data entry' is done entirely through the needle movment, which just feels better.  This is perfect for touch screen devices, where pointing and clicking is much more natural than typing.


The example above, taken from the new InfraRealty showcase sample uses the WebSlider to set a min/max value as a range for search criteria.  Personally, after seeing how natural this implementation felt, I wish that all of the RealEstate sites out there would update their UI's!



At the risk of sounding like a car salesman, I'm going to give you my honest opinion on this control - it's the bomb.  Not only can you set up hierarchical relationships at design-time, it does the CRUD for you as well!  No more worrying about how to update your hierarchical data when bound to the webgrid, just use the WebHierarchicalDataSource (WDHS from here on).  How about self related hierarchies?  This is a pain point for some of you I know, as you've been asking for this type of support for the grid for as long as I can remember.  The WHDS is here to relieve your pain.  You can set up your self related hierarchy in the WHDS, and then bind it to the WebGrid.  The WHDS is built on top of Microsof'ts datasource control framework - so the WHDS can be used to bind to anything that can consume hierarchical data (ie. trees and menus). 


Above, the WHDS designer is being used to create a 2 level hierarchy, taking info from two separate DataSources.  Note that you can take data for any level, from any datasource.  So if you wanted to map your LINQDataSource data to parent data coming from your SQLDataSource - it's a simple task.


You can download NetAdvantage for .NET 2008 Volume 2 (in various packages) from the download page, and begin using these new features today. 

I've written about moving the <%@ Register TagPrefix ... %> directives out of your ASPX pages, and into your web.config.  But one thing I never talked about was - how to do that step.  I always did it manually, but about a year ago, I remember talking with one of the developers on the Project Upgrade Utility.. Well, that discussion to my surprise spawned off a lovely feature..  So here's the simple 2 step process

1) Launch the Infragistics Project Upgrade utility


2) Open the options dialog by click on the File menu, and selecting the Settings menu item.  In the options dialog, check off "Add register tags to web.config" (optionally, choose "Add  all assemblies to web.config" which will add assembly references as well).


After saving your settings, the next time you run the Infragistics Project Upgrade utility, it will remove all Infragistics <%@ Register .. %> directives from your ASPX pages, and replace them with the appropriate TagPrefix nodes in your web.config.  Using the settings above, the upgrade utility will also add all Infragistics assembly references to your web.config. 


Well, it finally happened.. my PDC 2005 laptop bag started to tear apart at the seams.  It took me about a week to finally choose its replacement.  I had was looking for three things.  It had to look good for one.  For the amount of time I carry my laptop around with me, it's almost like a fashion accessory.  My second requirement was that it was small.  With the amount of traveling I do, the last thing I want is a big clunky bag.  My final requirement was that it looked professional enough for me to comfortably take it into business meetings without being embarrassed.  I finally decided on the Case Logic bag.

When the bag arrived my first impression was that it was bigger than I thought it would be.  But the canvas fabric was an improvement over my last bag.  The bag itself doesn't have much structure, so with out any contents in it, it shrinks down nicely.  When it came time to move the contents of my old bag to the new one, I was happy to see that there was plenty of room.  My only complaint is that there's no good single pocket organizer like there was in my PDC bag.  There are a few different pockets, but they're just large pockets with no separators/organizers in them.  I was still able to organize my things to some degree, so it wasn't a total loss.  The strap feels a lot more sturdy than the PDC 2005 bag did.  Its a wider strap, so it doesn't have the tendency to cut into your shoulder. 

The bag is a little more faded than it looks in the picture, and the graphics aren't as crisp.  I'm glad the graphics aren't as crisp, because I was worried they were a bit too 'busy'.  I tend dislike the whole idea of "street art" on mainstream items anyway.  It's like putting flame stickers on your car's hood.  If you got a good flame job from a quality paint shop, it just feels different than the stick on one sold at the local auto parts store.  Anyway, back to the laptop bag.. All in all I give it a 7 out of 10. It's close to what I wanted, but not exactly.  But for $30, I can't complain at all.

I'm finally back from Orlando, or at least I think I am.. but the weather here in NJ isn't the beautiful 75 degrees it was when I left, it's the 95 degrees that I was hoping to leave in Orlando.  Oh well, it's still good to be home.

TechEd was a blast.  I flew down on Monday night, and went directly to Glo for the kick-off "Party with Palermo".  When that finished up (around 10:30pm), I ran over to Hooters to watch the end of the hockey game, and get some dinner.  Well, all of you hockey fans know that I got to see much more than the last few minutes..  the game went into OT, and we hurried back to the house to watch the end of the game.  A 20 minute drive later, and we still got to watch 2 periods of playoff hockey. 

Tuesday morning was a little rough.  Not because we stayed up late to watch hockey, but because we stayed up even later to finish the wings and beer.  Luckily, everyone got up on time, and we headed over to the convention center to start our long day.  As expected, we went through just about every T-Shirt we brought, on Tuesday night.  The Infragistics t-shirts for this show were actually pretty cool, and didn't scream "tradeshow".  I forgot to grab one for myself before they were all gone - hopefully we have some left at the office. 

Wednesday through Friday is all pretty much a blur.  Not because of the alcohol (though I'm sure that played a part), but because I was so busy.  I did a Birds of a Feather (BOF) on Wednesday night, and it was pretty cool.  It was the first time I attended, let along moderate a BOF, and I'm looking forward to doing more of them.  The audience participation was great, and we had some much needed discussion around ASP.NET security.  Thanks for everyone who attended. 

Saturday finally came, and it was time to head home.  But before boarding my flight, I had to take care of one last thing - the teched 'tweener'.  Snuggled in the weekend between the two weeks of TechEd, the Florida .NET community got together for a code camp.  I did a morning session on Saturday covering LINQ and the LinqDataSource for ASP.NET.  The session was surprisingly full for a Saturday morning, and the crowd was eager to participate, which made it easy for us all to have fun (and stay awake).

That's my TechEd wrap up.  If you didn't get a chance to stop by the booth and say hi, be sure to catch me next time.  And Wally - my apologies for running out on you .. had a plane to catch.  We can sync up another time.

More Posts