C# Application Programming

Visual C# Kicks

Subscribe to Visual C# Kicks Newsletter



All articles and source code are under the Visual C# Kicks license agreement

VCSKicks Command Link  String Processing Library PRO OfficeButton

WinForms

Hide Articles

Passing Data Between Forms
  • 3.43/5
How to pass data between Windows Forms in C# using parameters and properties of .NET classes.

Align User-Interface Programmatically
  • 3.38/5
Align the controls in your Windows Form programmatically instead of relying on design-time to keep a clean user-interface.

Aero Shake Form
  • 3.33/5
Implement the new Window 7 Aero Shake feature in C# Windows Forms with simple .NET code.

Vista-Style Task Dialog
  • 3.28/5
Integrate the visually-appealing TaskDialog Vista control into your C# applications, which works even on old versions of Windows.

Cross-Thread Operations
  • 3.26/5
Properly and elegantly make cross-thread operations using delegates.

Splash Screens
  • 3.24/5
Add a splash screen to C# applications based on any kind of image, shadows and transparency fully supported.

Dynamic Controls
  • 3.18/5
Work with dynamic controls in C#, including setting properties and attaching events.

Launch EXE from Memory
  • 3.12/5
Basics on how to launch a .NET application from memory using Reflection.

Bind Window to Screen
  • 3.11/5
Constrain a Windows Form to the bounds of the screen. Useful for preventing users from dragging a window outside of the bounded area.

Virtual Forms
  • 3.1/5
How to use the TabControl .NET control to create virtual Forms inside WinForms.

Capture Control Graphics
  • 3.08/5
Capture the graphics of a visible .NET control to a bitmap using GDI.

Password Textbox
  • 3.07/5
The two simplest ways to implement a C# Password Textbox.

Aspect Ratio Form
  • 3/5
Create C# Windows Form that keeps its aspect ratio as it is being resized without any flickering.

Prevent Form Close
  • 3/5
Learn how to prevent the user from closing a Windows Form.

Windows 7 Style Form
  • 3/5
Create a Windows Form in C# that docks and snaps to the screen edges like in the upcoming Windows 7.

Single-Instance Applications
  • 2.89/5
Write C# applications that support single-instance run-time behavior. Prevent users from running your program more than once at the same time.

Image Button
  • 2.88/5
Add a great-looking C# image button to your .NET applications.

Remove Windows Form Titlebar
  • 2.75/5
Create a Windows Form's with no titlebar with simple C# code. Apply three different views to your titlebar-less Forms.

Drop-Down Dialog
  • 2.48/5
Create an advanced dialog in C# to mimic the behavior of a drop-down list. Useful for user controls such as color pickers.

Angle and Altitude Selector - Photoshop Style Custom Controls
Professional-looking C# custom controls with the look and functionaliy of Photoshop's angle selectors

Animated Windows Forms
Bring your C# applications to life with smooth consistent animations.

Capture Screen (download now)
Use some more advanced C# programming to capture the screen without the use of the Prnt Scrn key.

Click-and-Drag Form
By using various Form events and some adding and subtracting, one can create the same effect of a windows titlebar.

Custom Control Properties
Enhance your custom user controls by customizing the way the designer displays the custom properties of the control.

Custom Shape Form - Region
Create custom shaped forms but with the use of Regions. Regions allows for finer tuned behavior and can yield more stable results.

Custom Shape Form - Transperancy
Create Windows Forms that adapt to the shape of an imagine using a simple Form property. Custom shaped forms can be used to things such as creative splash screens.

Drag-and-Drop (download now)
The drag-and-drop functionality in C# programs is not as simple as it should be. Download this quick example to get a full working piece of source code to work from.

Fading Windows Form
Create a Windows Form that fades in when the mouse hovers over it and fades out when the cursor leaves its bounds.

Numbers-Only Textbox
Different ways to allow users to only write numbers in a Windows Form Textbox.

Screen Locker (download now)
In the internet you will find some fancy and expensive programs that can lock down your computer when you are away. In this project we will explore some fun brute-force techniques to create our very own screen locker application in C#.

Math

Hide Articles

Simplify Square Roots
  • 3.29/5
Use a C# algorithm to simplify complicated square roots into their simplest, most accurate, terms.

Calculate Distance Formula
  • 3.27/5
Calculate the distance between two points using a C# function to process the distance formula.

Boolean Matrix
  • 3.2/5
A C# implementation of a boolean matrix, complete with basic matrix operations and transformations.

Calculate Slope of Line
  • 3/5
Calculate the slope of a line defined by two points with simple C# operations.

Greatest Common Denominator
  • 3/5
Efficiently find the Greatest Common Denominator (GCD) of two numbers in C# by using the Euclidean Algorithm.

Converting Degrees and Radians
The .Net Framework's Math class has useful functions like the trig functions Sin, Cos, Tan. However the fuctions take in radian angles. So what can we do when we have an angle in degrees?

Cryptography

Hide Articles

Compute Hash
  • 3.67/5
Compute the hash code of data in C# using .NET Framework classes.

Xor Encryption
  • 3.42/5
Explore a simple way to encrypt string using the xor operator.

Random String Generator
  • 3.14/5
Write a flexible C# random string generator without complex algorithms. Useful for things such as random password generators.

SecureString
  • 3.13/5
Using the SecureString .NET class to manage sensitive data in C# applications.

Self Hashing Application
  • 3.06/5
Find out how to create a C# application that can calculate its own hash value.

Encryption Class (download now)
Use this class of static methods to quickly encrypt and decrypt strings or directly a byte array. Encryption and decryption works based on a password.

True Random Numbers
Enhance your C# applications by giving them to ability to generate truly random numbers as opposed to pseudo-random ones.

Drawing GDI+

Hide Articles

How to Load Image Files
  • 3.63/5
Learn the basics of opening an image file to a variable in C#.

Draw Text Outline
  • 3.57/5
Draw the outline of any text, as opposed to the fill, using only GDI+ in C#.NET.

Image Invert
  • 3.55/5
Invert an image colors in .NET with three different methods. Read the advatanges of each method.

Convert Color and uint
  • 3.5/5
Learn to convert between C# Color and uint variables. Helpful for working with Pointers in fast image processing.

Image Zoom
  • 3.5/5
Create an application to zoom into image in C# by harnessing the power of GDI+ and C#.NET.

Image Flip
  • 3.45/5
Flip an image in C# with GDI+ and Matrix transformation, a simple yet powerful method for image transformation.

Image Noise Generator
  • 3.43/5
Generate an image with grayscale noise for a variety of different purposes using a simple C# algorithm.

Draw Translucent Image
  • 3.36/5
Harness the power of GDI+ to draw translucent images without needing more complex image processing algorithms.

Image Rotate
  • 3.36/5
Rotate an image in C#.NET with only GDI+, no need for complex bitmap rotation algorithms.

Hex to RGB
  • 3.31/5
Easily convert HTML hex colors to RGB colors in C#.

Image Clip
  • 3.27/5
Fast simple image clipping code in C# using GDI+ to ensure speed and efficiency.

Dominant Color in Image
  • 3.21/5
Calculate the overall dominant color in an image using a simple C# algorithm.

Icon Extractor
  • 3.17/5
Use C# and some API calls to easily extract an application icon and use it within your own program.

Display GIF Animations
Witness two simple methods to display animated images using only C# functions, accomplishing the task automatically or manually by accessing the animation frames.

Euler 3D Rotation and GDI+ 3D Drawing
When it comes to drawing in 3D space, GDI+ comes with no support. This program shows how to handle 3D points and convert them to 2D points to plot using GDI+. As an example we create a cube that can be rotated in any of the three axis (X, Y, Z) using Euler's matrix formulas.

Fast Image Processing
Improve upon the .Net Framework's GetPixel and SetPixel GDI+ functions to increase the speed of your image processing applications exponentially.

Four-Point Image Distortion
Distort a bitmap into any quadrilateral shape simply by specfiying the distinct locations of each of the corner points. All done in pure C# code.

Improved 3D Drawing with GDI+
Witness an improved 3D graphics GDI+ application. Built upon the original Euler 3D Rotation article, learn how to get around the Gimbal Lock problem and learn how to shade in 3D shapes in C#.

Sorting 2D Points
Sorting points can be an extremely useful algorithm. Image processing algorithms often if not always require points to have a certain order, this class will use the IComparer interface to sort points according to either the X or Y values.

Files and Data

Hide Articles

KeyValuePair
  • 4.31/5
Store pairs of values in with the C# KeyValuePair generic structure.

How to Create Strong-Type DataSet
  • 4.11/5
Improve data-handling in your C# applications through the use of strong-typed DataSets, whether your are developing SQL-enabled applications or simpler XML ones.

Write a Binary File
  • 4.08/5
How to read and write a binary file in C# and some of its applications.

Palindrome String Function
  • 4.08/5
Use C# to check if a string is a palindrome or not using two different approaches.

Binary Searching a List
  • 4/5
Using binary search on a sorted .NET List or ArrayList to quickly find elements.

Dictionary
  • 4/5
A close look at the C# Dictionary and SortedDictionary data structures.

Image to Byte
  • 4/5
Learn two effective methods to convert an image in C# into a byte array.

Priority Queue
  • 3.89/5
C# Priority Queue is a specialized Queue data structure. Useful in many applications and can be used for sorting data.

HashSet
  • 3.82/5
Overview of the new C# HashSet data structures along with some comparisons and benchmarks.

AVL Tree
  • 3.75/5
C# AVL Tree is a self-balancing binary tree designed to improve the running time of searching through data.

Iterators
  • 3.7/5
Explore the three C# iteration methods: for loop, foreach loop, and enumerators.

String to Array
  • 3.67/5
Learn how to convert a string into an array in C#.NET.

Skip List
  • 3.56/5
C# Skip List is a powerful data structure that allows for fast searching of data.

Convert Array to String
  • 3.5/5
Convert any C# array to string with a single function. Supports generic and non-generic lists.

Set DataGridView Selection
  • 3.5/5
How to set the row selected on a DataGridView control programmatically with C#.

Faster Bucket Sort
  • 3.31/5
How to efficiently put the bucket sort algorithm in practice in C#.

Bucket Sort
  • 3.27/5
Bucket sort is a simple algorithm for sorting data in C#.

String Processing C# Functions Library
  • 3.14/5
Discover the possibilities of string processing in C#.NET. Expand upon the basic string functions provided by the .Net Framework.

Temporary Files
  • 2.92/5
Working with temporary files in C# with the IO namespace.

Binary Search Tree
  • 2.88/5
C# Binary Search Tree is a simple data structure for fast searching of data.

Compress Data (download now)
Compress and decompress bytes on-the-fly with C# functions, no need for external libraries.

Convert Bytes to File-Size
Derive a file's filesize from counting the number of bytes using simple C# classes.

Randomize Array List
Discover how to randomize a list of items. Generate a new list where items are placed in random order.

Read Text File
Find out how to read a text file in C# with the System.IO namespace. Read it all at once or by lines, both methods are explained.

Scanning Through a Hard Drive
Easily upload a file through FTP using pure C#.

The C# Data Structures
Explore the various built-in C# data structures and their applications in this three part article.

Uploading a File with FTP
Easily upload a file through FTP using pure C#.

ASP.NET

Hide Articles

ASP.NET Web Hosting
  • 3.75/5
Read some points to consider when choosing an ASP.NET web hosting service for your web applications.

ASP.NET MessageBox
How to display a message box in ASP.Net using client-side code.

Ajax Control Toolkit
Great place to start in expanding your collection of AJAX-enabled user controls.

Web

Hide Articles

Encode URL
  • 4.09/5
Encode a URL string in C# easily for both ASP and desktop development.

Extract Images From URL
  • 3.73/5
Fetch all the images displayed on a webpage with C#.NET. Done by parsing the HTML code for image URLs.

Extract Links
  • 3.54/5
Extract links from a webpage URL or HTML using some simple, elegant C# code.

HTML Emails with Gmail
  • 3.29/5
Send HTML emails in C# with .NET Framework classes, no need for external components.

Launch C# Hyperlink
  • 3.23/5
Find out how to launch a hyperlink in C# using elements built-in the .Net Framework.

Load Image from URL
  • 3.13/5
Load an image from a URL to memory, no need to save the image to the hard drive.

Download File FTP
Enable your C# applications to connect to the internet to download files and webpages from an FTP Server with nothing but pure C#.Net code.

Download File HTTP
Enable your C# applications to connect to the internet to download files and webpages using nothing but .Net Framework classes.

Get Server Real-Time (download now)
Use C# to ask a web server for the actual current time. Useful for distribution applications and other time sensitive programs.

The Link Cloaker
Let's say you have a giant url and you need to shorten it. A short url is just more professional and attractive. Savvy online affiliates know the trick is to create a redirection page. The link cloaker uses some very simple C# methods to automate creating cloaked pages.

URL Checker
Access a URL address with a simple C# application to determine the validity of a website link.

Miscellaneous

Hide Articles

Environment Properties
  • 4/5
Learn how to access common environment information through C#.NET.

.NET Stock Images
  • 3.89/5
Discussion on stock images for developers along with some sample royalty-free stock images.

Credit Card Verification
  • 3.88/5
Quickly and easily verify credit card numbers in C# with the Luhn Algorithm. Works in desktop applications, ASP.NET, and mobile applications.

Action Lists
  • 3.75/5
Add ActionLists to C# controls to make properties and methods more accessible during design-time.

Access Properties by Name
  • 3.6/5
Use reflection to read and write to properties of .NET objects in C#.

Save TreeView State
  • 3.54/5
Save the state of a TreeView when it is cleared and repopulated. Very useful when working with dynamic data displayed on a TreeView control.

C# Test Performance
  • 3.5/5
Test the speed of C# methods and algorithms with this extremely easy to use SpeedTester class, written entirely in C# for fast and simple integration.

Disk Drive
  • 3.5/5
Easily open and close multiple CD and DVD trays programmatically with C#.

Get-Set Method Generator
  • 3.5/5
Automatically generate get-set methods in C# based on existing source code using simple text parsing.

Create Instance From Type
  • 3.45/5
Create a new instance of an object from a reference to a .NET type.

Question-Mark ? Operator
  • 3.38/5
Shorten conditionals in C# by using the ? operator.

Code Region
  • 3.33/5
Format C# and .NET source code in Visual Studio with region code blocks. Combined with keyboard shortcuts and a little common sense, regions can format code to make it more readable.

Request Google PageRank
  • 3.3/5
How to request the Google PageRank of a website through C#.

Loop Time
  • 3.27/5
Make your applications run in circles for a specified amount of time without the need for a troublesome Timer control.

Call Functions by Name
  • 3.2/5
Use reflection to call C# functions, including functions with parameters and return values.

Generate GUID
  • 2.93/5
How to generate a unique identifier, GUID, for use in all types of C# applications.

Application Optimizing Utility
Test C# code segnments against each other to compare their performance speed.

Assembly Custom Reference Path
Find out how to specify to a C# application on what subfolders to locate C# libraries that contain essential execution code.

Detect .NET Framework
With the reliance of C#.NET on the .NET Framework, the ability to detect if the .NET Framework is installed on a computer can be quite useful. Check out a simple way to do it.

Time Calculator (download now)
Add and subtract different times by switching between different time-formats used in C#.

Unique Hardware ID
Obtaining a true hardware serial from a user computer can be tricky business. Luckily the .Net Framework provides the means to obtain a reliable ID which can in turn be used in licensing processes.

Reading

Hide Articles

C# Component Guideline
  • 3.89/5
There are characteristics that a good C# component should have in order to make it worth selling. Here is a quick outline of some of those aspects.

Code Obfuscation
  • 3.5/5
Although C# applictions are vulnerable to code decompilation, there are methods to protect against it, one of which is code obfuscation.

XML Documentation
  • 3.41/5
Use the .NET built-in XML documentation support to quickly add documentation to your C# projects without major hassels.

7 Ways to Optimize C# Code
Discover seven simple ways to improve the readability and performance of C# source code and applications.

C# Programming Language of Choice
Explore the advantages of the C#.Net programming language as a development platform for small and big applications.

Upgrading to Visual Studio
Despite the potential of the Visual Studio Express editions, there can be numerous reasons to upgrade to the full version of Visual Studio, even for small-to-medium sized projects.

Using Professional Icons
Raise the presentation quality of your finished applications by adding icons. Read about tips for designing your own or for purchasing professional application icons.

All C# Articles and source code are under the Visual C# Kicks license agreement

License Agreement | Privacy Policy
Link to Us | Subscribe to Newsletter | Contact Us