Per Søderlind

I code for fun

iTextSharp

iTextSharp is a free .NET library that allows you to generate PDF files on the fly. You'll find the iTextSharp Tutorial at https://itextsharp.sourceforge.net/tutorial/ more ...

ASP.NET Resource Kit

"The ASP.NET Resource Kit is an essential resource for any web developer whether you are already using ASP.NET today, or looking to learn ASP.NET. " more ...

Building a Better Binary Search Tree

Scott Mitchell / 4GuysFromRolla.com: "This article, the fourth in the series, begins with a quick examination of AVL trees and red-black trees, which are two different self-balancing, binary search tree data structures. The remainder of the article examines the skip list data structure, an ingenious data structure that turns a...

Safe, Simple Multithreading in Windows Forms

"It all started innocently enough. I found myself needing to calculate the area of a circle for the first time in .NET. This called, of course, for an accurate representation of pi. System.Math.PI is handy, but since it only provides 20 digits of precision, I was worried about the accuracy...

HTML Dog Guides - HTML Dog

"There are six guides covering the length and breadth of HTML and CSS. The Beginner's Guides are step-by-step tutorials, whereas the Intermediate and Advanced Guides contain stand-alone tips, tricks and best-practice techniques" more ...

String formatting in C#

Here's an excellent article showing how to utilize the String.Format() to the max. Example taken from the article:String.Format("{0:$#,##0.00;($#,##0.00);Zero}", value); This will output "$1,240.00" if passed 1243.50. It will output the same format but in parentheses if the number is negative, and will output the string "Zero" if the number is...

XmEdiL - free document editor

"XmEdiL is free document editor for XML and other languages.The primary use of XmEdiL is to quickly and easily author XML documents and XML related projects. XmEdiL contains everything you need to write, process, and debug XML documents. XmEdiL provide well-formedness check, validation and transformions of XML documents. The XPath...

The saga continues - Part 3: Binary Trees and BSTs

Anyone working with datastructures should follow Scott Mitchell's serie An Extensive Examination of Data Structures. In part three he looks at a common data structure that's not included in the .NET Framework, the binary trees. more ...

The keyboard is still the King

"When speed counts, the keyboard is still king. Almost all the actions and commands you can perform with a mouse you can perform faster using combinations of keys on your keyboard. These simple keyboard shortcuts can get you where you want to go faster than several clicks of a mouse....

SP/Invoke

"SP/Invoke generates code to allow C#, VB or JScript.NET programmers to invoke SQL Server stored procedures as if they were static methods on CLR classes. It was objectnation's submission to Chris Sell's 'Spend a Day With .NET' contest where it won the 'Best Use of SQL' prize (click here for...