The Microsoft .NET Framework comes packaged with all the building blocks to implement a keyboard interface in a WinForm application, we'll illustrate and walk through how to extend those building blocks with basic .NET controls, inheritance and custom events to create a consistent keyboard interface.
Latest Controls Articles
Creating a DockablePanel-Controlmanager Using C#, Part 7
Going on to design a dockable panel, discover some very interesting techniques, such as hooking the mouse and how to debug an application in such cases. Learn to unpin a docked panel so it slides to the border of the main application.
Why Is Everything So Darn Declarative?
Learn about a different approach of using the GridView and DetailsView controls in a web app.
Creating a DockablePanel-Controlmanager Using C#, Part 4
This is the 4th part of a series of articles about how to design DockingForms using a DockingManager written in C#.
Creating a Dockable Panel ControlManager Using C#, Part 3
Continue your study of how to create your own dockable Forms.
Lights Out Game (in C#)
Just play a game of Lights Out, or take some time to see an array of buttons put to use.
Latest Developer Videos
More...Latest CodeGuru Developer Columns
MFC Integration with the Windows Transactional File System (TxF)
The Transactional File System (TxF), which allows access to an NTFS file system to be conducted in a transacted manner through extensions to the Windows SDK API. MFC 10, has been extended to support TxF and related technologies. This support allows existing MFC applications to be easily extended to support kernel transactions.
.NET Framework: Collections and Generics
The original release of the .NET Framework included collections as .NET was introduced to the Microsoft programming world. The .NET Framework 2.0 introduced generics to complement the System.Collections namespace and provide a more efficient and well performing option. Read on to learn more...

How to Determine Which Office Version is Installed with VB.NET and C#
Knowing which version of MS Office is installed on the client computer is vital; unfortunately, many programmers see this as an afterthought. Hannes du Preeze shows you four different ways to determine the Office versions installed so that you don't make this mistake.

Building an Azure Queuing Message Pipeline
A developer building messaging solutions with Azure Queuing and Azure Service Bus should follow a Pipeline pattern when processing a significant number of different messages. One approach to building a Pipeline is to layer a message following an Envelope pattern.