Friday, August 11, 2006

So everyone thinks concurrency will be super important in the years to come. And who would disagree? I recently found this link on the MS Research page. Of course everyone's heard about C Omega, since it was the prototype for the implementation of generics, but did you know about the concurrency lib?

Joins - A Concurrency Library

Comega promised C# programmers a more pleasant world of concurrent programming. Comega had a simple, declarative, and powerful model of concurrency—Join Patterns—applicable both to multithreaded applications and to the orchestration of asynchronous, event-based distributed applications. By exploiting Generics in the Common Language Runtime, we can provide join patterns as a library rather than as a language feature. Offering a library has advantages: The library is language neutral, supporting C#, Visual Basic, and other languages; and the library's join patterns are dynamic, supporting solutions difficult to express with the static join patterns of Comega. The Joins library is efficient and has a simple interface that makes it easy to translate Comega programs to C#. The installer includes a tutorial, documentation, samples, and demos.

8/11/2006 8:58:50 AM (Eastern Standard Time, UTC-05:00)  #    Comments [3]  | 
Wednesday, August 02, 2006

So I came across this site (http://www.infoq.com/) recently. It has lots of industry news, but more importantly has a free eBook "Visual Studio Tips and Tricks" http://www.infoq.com/minibooks/vsnettt. You have to sign up to download, so spam might be a small price to pay ;-)

I pride myself in knowing lots of VS shortcuts and the like, but I have to admit I have already picked up quite a few new ones.

8/2/2006 10:07:08 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]  | 
Monday, June 05, 2006
See for yourself...
6/5/2006 9:55:13 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1]  | 
Tuesday, April 11, 2006
Microsoft videos showcasing the difference Visual Studio 2005 makes
4/11/2006 11:19:14 PM (Eastern Standard Time, UTC-05:00)  #    Comments [2]  | 
Monday, April 10, 2006
Team Foundation Server install gripe
4/10/2006 11:01:17 AM (Eastern Standard Time, UTC-05:00)  #    Comments [1]  | 
How to use ASP.NET Providers in Windows Forms
4/10/2006 9:57:59 AM (Eastern Standard Time, UTC-05:00)  #    Comments [6]  | 
Friday, March 31, 2006
Presentation collaterals.
3/31/2006 9:16:49 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0]  | 
Friday, March 03, 2006
Windows Live Street Level is AWESOME!
3/3/2006 10:03:35 AM (Eastern Standard Time, UTC-05:00)  #    Comments [4]  | 
Monday, February 20, 2006

Download: [Removed] See Lutz Roeder's site for the new additions.

 

As the title suggests the control in the provided download is based on Lutz’s Roeder’s Command Bar control (http://www.aisto.com/Roeder/dotnet/ ). One of the main new features I added to the library was the DropDown and SplitButtons.

 

Split Button à          Dropdown Button à

 

Additionally, there was no setting aka .NET property for displaying the Text of the button. The Buttons now support displaying an image, text or both. Along with these new capabilities is the Image and Text relation property. The buttons are now capable of displaying the text to the right of the image as it’s used in Internet Explorer, or underneath as is the case with Outlook Express.

 

IE

 

 

Outlook Express

 

 

According to the MSDN documentation (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/rebar/rebar.asp ), the Rebar control is a container controls for any control or window as it is known in the Win32 world. The most popular implementation is of course Internet Explorer aka Windows Explorer.

 

I took the liberty of creating a … well see for yourself…

 

 

Keep in mind I only added very limited functionality for the demo.

 

Microsoft has however supplied some information regarding implementing an Explorer like app. See http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/faq/ietoolbar.asp for further details.

 

A couple of important notes:

 

I have modified the object model from the original found on Lutz’s site. Unfortunately, I don’t recall all the changes. Also, when working with the bits, just know that the code in initialization phase of the control is critical. This is a function of how the Win32 (Windows Common Controls) work. I have added things like “//new Code here” to demarcate changes form the original where possible, but not everywhere. Also, much of the new functionality I added uses Windows Constants defined by the MSDN documentation http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/toolbar/toolbar.asp . The Windows SDK will be needed (this is an option when installing Visual Studio), to define further constants that I did not provide.

 

One last thing to consider, because there is extensive use of PInvoke throughout, remember to clean up unmanaged resources.

 

Enjoy!

2/20/2006 12:11:51 AM (Eastern Standard Time, UTC-05:00)  #    Comments [4]  | 
Wednesday, February 15, 2006
Generic algorithm for reading fields from a DataReader.
2/15/2006 10:33:33 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0]  | 

Theme design by Jelle Druyts