The Wayback Machine - https://web.archive.org/web/20100724070153/http://www.codeguru.com:80/csharp/csharp/cs_syntax/

    Basic Syntax

    C# Programming: Using Generic Factory Classes to Create Generic Exception Handlers

    Exception handling can be a costly affair and should be used meticulously as it undoubtedly serves as an integral part of our applications and shouldn't be sidelined for any reason. The common problem in implementing an exception handling mechanism is the dependency on the library after we create a provider. This C# tutorial looks at the possibility of switching the providers easily.

    Implementing a Keyboard Interface using .NET Controls for a WinForm Client

    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.

    The Practical Guide to Multithreading - Part 1

    Understand from this guide how and when - as well as when not - to use multithreading.

    Using the Task Parallel Library and PLINQ to Go Parallel

    With more and more computers using a multi-core processor, the free lunch of increased clock speeds and the inherent performance gains are over. Software developers must instead make sure their applications take use of all the cores available in an efficient manner. New features in .NET 4.0 mean that managed code developers too can join the party.

    There is More Than Just a Little Touching...

    The way you interact with a personal computing device is changing and is about to change even more with lots of touching and even a little hidden video.

    Dumping an Object's State with a DynamicMethod

    Emitted code and the DynamicMethod have the benefit of speed and the emitted code can be unloaded when the DynamicMethod goes out of scope, resulting in the best of all worlds.

    Getting Up and Running with the Composite UI Application Block for WPF

    Building small applications from scratch is easy enough with almost any available programming technology. However, if you are assigned the task to build large applications and have the requirement to re-use code either now or tomorrow, you need to be a lot more careful. Microsoft has ready-made patterns that help you build complex Windows Presentation Foundation applications with reusability and componentized design in mind.

    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.

    [Updated] Creating a C# Gradient Progressbar Component

    Learn how to create your own Progressbar-like control, which exposes the same properties as a normal Progressbar, but with added visual appeal.

    Parsing Is Easy: Base C Sharp Classes and Expressions Calculator

    Learn about parsing, and creating classes and expressions.

    Creating a DockablePanel-Controlmanager Using C#, Part 6

    Learn how to create more advanced docking features, such as docking to the upper right corner or having some panels docked at the bottom of an MDI Form collected together in a TabControl. Each of the different parts include the full source code (up to that point), as well as a retrospective short explanation about the different topics covered already.

    [Updated] Creating a DockablePanel-Controlmanager Using C#, Part 5

    Learn how to size a docked Panel and how to undock it again as well as which actions are needed to prepare the more advanced docking actions.

    Why Is Everything So Darn Declarative?

    Learn about a different approach of using the GridView and DetailsView controls in a web app.

    .NET Tip: Converting Strings to Enum Values

    Learn how to take a string and convert it into an enumeration value.

    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#.

    .NET Tip: Using Extension Methods

    Extension methods allow you to create utility functions and have them appear to be part or your classes or the built-in classes. You'll learn by making a method from an earlier tip available as an extension method.

    [Updated] Creating a Dockable Panel-Controlmanager Using C#, Part 2

    Learn how to get a borderless Form to move around on the screen by capturing it with the mouse and dragging it, and to be able to resize the form, the same way as a normal sizeable Form can be sized by dragging its edges.

    Creating a Dockable Panel ControlManager Using C#, Part 3

    Continue your study of how to create your own dockable Forms.

    .NET Tip: Display All Fields and Properties of an Object

    Learn how to display all of the fields and properties of any object. By using a little reflection, you can expose the internals of your objects.

    Language Feature Highlight: Local Type Inference in C# 3.0 and Visual Basic 9.0

    Learn about local type inference in C# 3.0 and Visual Basic 9.0. Examine why it is relevant and the syntax for its use.

    Extending Outlook Functionality with a .NET Add-In

    Interacting with Office functionality in a .NET application can add a new level of functionality while providing the user with familiar methods of getting work done. Explore extending Outlook via a sample add-in.

    .NET Tip: Throwing Custom Exceptions

    Use custom exceptions to add information that will be more meaningful to your users when exceptions occur. And, you still can maintain all the information from the original exception.

    Microsoft Outlook Integration with C#.NET

    Interacting with Office functionality in a .NET application can add a new level of functionality while providing the user with familiar methods of getting work done. In Part One of this series, explore a sample WinForms Outlook contact management application.

    .NET Tip: Throwing Exceptions: Will You be Able to Catch What You Expect?

    Handling exceptions can sometimes be a little tricky. If you are not careful, your code may act on the wrong information. Learn how to bubble up exceptions while keeping the original exception information intact.

    Creating a Dockable Panel-Controlmanager Using C#, Part 1

    Learn how to create your own usercontrols. This is done in several articles of increasing complexity so the reader will be able to follow it easily.