C# Corner

Resources  
  • Shuffle Game for BeginnersJan 05, 2000. This code sample is a GDI+ shuffle game aimed for beginners. Attached zip file includes the exe and the Shuffle.cs file.
  • Building the Middle Tier in the Microsoft .NET FrameworkJan 16, 2000. Building the middle tier in the Microsoft .NET Framework.
  • Creating and Using Custom Attributes in C#Feb 27, 2000. Attributes are classes that allow you to add additional information to elements of your class structure.
  • ColorDialog in C#Dec 21, 2000. A ColorDialog control is used to select a color from available colors and also define custom colors. This article demonstrates how to use a ColorDialog in Windows Forms and C#.
  • Using ListViews in C#Jan 18, 2001. As a Visual C++ user for 10 years I can say that Microsoft deserves praise for their new ListView class. The MFC ListView class was, well, unpleasant to use. C# makes life a bit easier with a richer property and method set for ListViews. Also, you can now, set the ListView to select an entire row in report mode, something that in Visual C++ you had to write a whole custom ListView control to do. Note also the nice grid lines.
  • Creating a Login User ControlApr 16, 2001. In this article, we have started with an introduction to the UserControl and have learnt to use the ADO+ DataReader.As we seen User Controls simplifies several common Web application scenarios.User Controls allow developers to easily define custom controls using the same programming techniques for writing Web Forms.
  • Defining Custom Entry PointsApr 30, 2001. In this article i am going to demonstrate how we can manipulate the IL code to change the behaviour of how the .NET programme executes.
  • Working with Relational Data in ADO.NETMay 03, 2001. Working with hierarchal data was not that easy with the previous version of ADO.
  • Difference Using Directive and StatementJul 26, 2001. This article explains difference between using directive and using statement with sample example.
  • Message Box BuilderAug 14, 2001. This program will help you using MessageBox Class. Program generates code from what you choose.
  • Interface Components Interoperability Aug 27, 2001. The fundamental concept behind both COM and DCOM is the interface. An interface is an agreement between a client and an object about how they will communicate with each other.
  • Using Attributes in C#Sep 14, 2001. This article shows how to create custom attribute classes, use them in code, and query them.
  • How to create a "ComboBox button" in a toolbar in .NETNov 20, 2001. You can actually put a ComboBox in your toolbar by just dragging a ComboBox from the toolbox onto the toolbar but if you want the ComboBox to be one of the toolbar buttons, you are out of luck using the regular old ComboBox. One way around this is to use the DropDownMenu style of a ToolbarButton to create a pseudo-ComboBox.
  • Creating a Custom Data AdapterDec 03, 2001. A good programmer needs to know how to work with ADO.NET DataAdapters at the code level.
  • Custom FileDialogJan 18, 2002. The purpose of this article is to give a simple example showing how easy it is to create a custom FolderDialog.
  • Implementing IEnumerator and IEnumerable Interfaces using Inner Class in C# Feb 28, 2002. .NET framework provides IEnumerable and IEnumerator interfaces to implement collection like behavior to user defined classes.
  • Sorting Object Using IComparer and IComparable Interfaces Mar 01, 2002. The System.Collections namespace contains interfaces and classes that define various...
  • Multi-threaded Web Applications - Case II: Port ScannerMar 12, 2002. This article continues the 4-parts series of Multi-threaded Web Applications. In the first part, I have demonstrated how you can use multi-threading with ASP.NET to make a web based search engine more responsive, and to reduce the time required to compose the result. In this article, I will demonstrate how you can apply the same technique to a web based port scanner.
  • Boxing and Performance of CollectionsMar 14, 2002. In this article, I will compare some performance issues of values and references types during boxing and unboxing operations.
  • Peer-to-peer Chat Program using Asynchronous SocketMar 22, 2002. This is a simple chat program, which uses asynchronous socket to provide connection between two machines.
  • Tutorial: Working with Files and DirectoriesApr 03, 2002. One of the rich experiences in working with .NET is a huge collection of Base Class Libraries .
  • .NET Performance Counters, Part 1: Predefined CLR Performance CountersMay 13, 2002. In this article, I will describe what a performance counter is and introduce you to the predefined counters that you can use to monitor the state of the CLR while your applications run.
  • Sorting MultiColumn ListView Windows Forms ControlMay 20, 2002. If you want to sort on the first column of a ListView, simply click the Sorting in the properties Window and choose Ascending or Descending as a value. If you want to do sorting in all the columns of a ListView, you need to write custom sorting using the ListViewItemSorter property.
  • Case Study: Demo Networking Financial System May 23, 2002. In this tutorial I will discuss some of the design and development issues that one might consider when using .NET framework for developing Network affiliated applications.
  • Custom Error Handling in ASP.NETMay 30, 2002. Structured exception handling is a fundamental part of the CLR and provides .Net programmers a great way of managing errors. In addition to CLR exception system, ASP.Net also provides ways of handling errors.
  • Configuring Applications in .NETJun 06, 2002. The .Net Framework provides a very convenient and flexible way to configure applications at run time.
  • Using Installer Classes to Ease Deployment in VS.NETAug 07, 2002. In this article I will demonstrate how to incorporate installer classes with your Visual Studio .NET msi's to handle any supporting tasks that your assemblies may need.
  • Developing a Card Game using Collections and PropertiesAug 08, 2002. In this article, author develops a card game using collections and properties.
  • Understanding Garbage Collection in the .NET FrameworkAug 09, 2002. In this article we will explore the Garbage Collection feature in the .Net framework and the activities required in applications to manage resources complementing the Garbage Collector.
  • DataGrid Customization Part-II: Custom Sorting and DataGrid Column HidingAug 13, 2002. How to I get the name and index of the Column headers? How do I find out if mouse click right click was on a column
  • Creating Strongly Typed Custom Collections in C#Sep 02, 2002. In this article, author shows you how to create and use strongly typed custom collections.
  • Remoting Calls RecommendationSep 19, 2002. The goal of this article is not to describe remoting technology in details. It is more focused at the practical design and implementation mistakes development process concerning garbage collection and performance.
  • Remoting Calls RecommendationsSep 19, 2002. The goal of this article is not to describe remoting technology in details. It is more focused at the practical design and implementation mistakes during development process concerning garbage collection and performance.
  • Attributed Programming in .NET using C#Oct 04, 2002. In this article, I illustrate the power of attributed programming by examples that show a modular approach to issues that can crosscut many classes. Attributes will provide exciting software development abstractions in the future.
  • BlackJackOct 10, 2002. So as a learning experience, I decided to try writing a Blackjack game.
  • Puzzle ControlOct 15, 2002. In this application I had combined the power of C# and AI in order to solve the "puzzle problem".
  • Customize User Interfaces and Pass User Input to Installer ClassesOct 19, 2002. In this article I am going to demonstrate how to customize your MSI install to prompt the user for some information and then pass this information to an installer class. This can be useful when needing to do something during an install based on the user input.
  • Platform Invocation Services in .NET FrameworkOct 25, 2002. This article will cover the details of Platform Invocation Services provided in .Net Framework. Platform Invoke Services acts as a bridge between the managed and unmanaged code. This service enables managed code to call unmanaged functions which are being exposed by any dynamic link libraries (DLL’s) such as Win32 API’s or any custom DLLs.
  • Maze Solver Oct 28, 2002. Solving mazes is one of those problems, at least with the algorithm I've chosen here.
  • Customize User Interfaces and Pass User Input to Installer ClassesOct 29, 2002. In this article I am going to demonstrate how to customize your MSI install to prompt the user for some information and then pass this information to an installer class. This can be useful when needing to do something during an install based on the user input.
  • FreeCell Game using Windows FormsNov 14, 2002. FreeCell is an implementation of the FreeCell card game using Windows Forms.
  • Daleks in .NETDec 11, 2002. The other night my girlfriend dragged me down to the NYC Public Library claiming that they had a huge Science Fiction movie section. Admittedly my taste in movies and my wife's taste in movies can vary slightly, however, I was willing to take a chance, given that rentals at the library are free as opposed to $4 at the local video store.
  • Using Stored Procedures in Conjuction with DataAdapterJan 09, 2003. A stored procedure is a named collection of SQL statements that are stored in the database. To the client a stored procedure acts similar to a function.
  • DTS Custom Task in C#Jan 28, 2003. During last year I wrote an article about DTS and how to use it in C#. In that article I stated that I didn’t manage to solve the problem related to CustomTask. Today I finally forced myself to tackle that problem again and here is the result. Writing simple CustomTask in C# is the easiest part.
  • Project Trilma .NETFeb 19, 2003. In 1883 George H. Monks from Boston designed Halma, an interesting board game with simple rules.
  • Missile Command .NET Feb 23, 2003. Missile Command .NET is a simple video game written in C# using GDI+ for graphics. It's a tribute to the classic Missile Command game by Atari. I wrote this game to teach myself more about programming in C#.
  • Developing Secure Web Sites with ASP.NET and IIS: Part IMar 04, 2003. Developing security for a site is like paying tax. You know it should be done at the end of financial year. But you keep it for the last and some time expect you should never have to do it. It is a similar kind of situation when building a web site. There are some web sites available to general public that can be access by any one. The security for these sites can be minimum or none at all. There are some web sites that publish and hold important information that have to be secure one way or another.
  • Developing Secure Web Sites with ASP.NET and IIS - Part IMar 04, 2003. Developing security for a site is like paying tax. You know it should be done at the end of financial year.
  • Execution-Time Code Generator for C#Mar 06, 2003. The Common Language Runtime provides a new way of doing things. The compile-time world still exist, but it is also possible to build dynamic systems where new code is added by loading assemblies or even by writing custom code on the fly.
  • Dots GameMar 06, 2003. Here is a dots game developed using C# and GDI+. New version of the game will be coming soon.
  • Basics of Extending Your Working Environment in Visual StudioApr 10, 2003. All of us have used Macros in Microsoft Office and Add-ins in Visual Studio 6 and I am very sure all of us have been impressed as well by their power to control their own working environment.
  • Basics of Extending Your Working Environment in Visual StudioApr 10, 2003. Visual studio.net offers a wide variety of options, which enable the user to create custom and personalized Visual Studio working environments.
  • C# Video PokerApr 14, 2003. This Video Poker game is an imitation of a casino Video Poker machine. It is written using Windows Forms.
  • Dynamically Setting Properties of a Class from a DatabaseMay 12, 2003. This example demonstrates a powerful feature of Reflection that will allow you to dynamically set the values of a class.
  • Implementing Custom Paging in ASP.NET DataGrid ControlJun 01, 2003. This article shows you how to implement custom paging in ASP.NET DataGrid control.
  • Sorted List and Web Server ControlJun 09, 2003. This article shows you to take advantage of SortedList in data binding with Web Server controls.
  • Custom ComboBoxJul 11, 2003. The attached source code is a C# application that demonstrates how to create a custom ComboBox control in Windows Forms.
  • Lingo Game in C#Jul 30, 2003. It is a Lingo game developed in C#. It is based upon Game Show Network's Lingo but has a few modifications to it.
  • Custom Exceptions using Microsoft Exception Management Application BlockSep 02, 2003. This article shows you how to use Microsoft Exception Management Application Block to write custom exceptions.
  • In Depth ASP.NET using ADO.NET: Part IIINov 18, 2003. In this article we will discuss a number of ways to retrieve, show, and update data with ASP.NET forms using ADO.NET. Also, we will have a clear idea about the most common server controls in ASP.NET.
  • Automatically Break into Code When Calling Debug.AssertDec 22, 2003. This sample creates a dll that once referenced by your ASP.Net or Web Service app, just adding a small block of xml into your web.config file will cause the debugger to automatically break into your code.
  • Deployment: Customizing your .NET deployment ProjectsDec 29, 2003. The fact of the matter is that Visual Studio.NET already contains everything you need to create a rich setup experience for your users. In this article we are going to show you two ways to add a readme dialog to your application, the easy way and the hard way. The easy way requires absolutely no coding. The hard way requires coding and actually allows you to add complex custom features to your application.
  • DataAdapter in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • DataView in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • DataTable Events in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • Constructing a DataTable using C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • DataReader in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • DataSet in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • Data Binding in DataGrid Control using C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • DataTable in C#Feb 17, 2004. The ADO.NET DataSet is a data construct that can contain several relational rowsets, the relations that link those rowsets, and the metadata for each rowset. The DataSet also tracks which fields have changed, their new values and their original values, and can store custom information in its Extended Properties collection. The DataSet can be exported to XML or created from an XML document, thus enabling increased interoperability between applications.
  • New Features in C# 2.0 : Part 2Mar 10, 2004. In this article I will talk about iterators, anonymous methods, and partial classes.
  • Shopping Cart Application in ASP.NETApr 22, 2004. This is an online shopping cart application written in ASP.NET and C# where user can browse, add items to the shopping cart and place orders.
  • Tablet PC Ink Editing Modes - Select and Delete InkJun 25, 2004. In my previous articles, I discussed how to use Ink and set its properties to draw on a Windows Forms and Windows controls. In this article, I will discuss some more features of Tablet PC Ink including selecting and deleting ink, Ink collection, and Ink object.
  • Avoid Memory Leaks with Destructor and DisposeJul 01, 2004. Here are two classes that allocate resources, the first class needs to implement a custom destructor and standard Dispose, but the second class doesn't need either.
  • Thread Safe Collections ArrayList and QueueSep 24, 2004. The attached project provides a dll containing a wrapper around the non-thread safe ArrayList and Queue classes. The wrapper implements the most common functions of this collection elements.
  • Microsoft CRM Customization: MS Exchange Transport SMTP Event SinkOct 18, 2004. Microsoft CRM has variety of customizations options and tools. The official and the most popular is Microsoft CRM SDK: collection of C#.Net and partially VB.Net classes, methods and code samples.
  • Introduction to ASP.NETNov 17, 2004. I have seen many tutorials on ASP.NET but most of them starts with coding and writing your first ASP.NET program. But here I have written this tutorial for explaining why there is a need for ASP.NET when classy ASP is working fine, what are the underlying technology behind ASP.NET, and what programming model ASP.NET provides to programmers.
  • A Chess Program using C#Nov 29, 2004. This is a chess program, made using C#. It has used object oriented concepts and design patterns like Flyweight, Factory and Decorator. Two player can play this game and it has facility to drag-drop pieces. It also shows potential positions of each pieces which is useful for learning.
  • Moving C Structures into .NET with Custom MarshalingDec 17, 2004. Microsoft provides several attributes for marshaling C to C#. In our example we will take the case where we have hundreds of structures and only a few API calls, so we only need to generate the marshaled code for the structures.
  • Best Practices of Exception ManagementMar 08, 2005. Exception management is one of the key area for all kinds of application development .You should adopt an appropriate strategy for exception management to build high quality and robust application .It is a very powerful concept and makes the development work very easy if its used efficiently.
  • Creating simple Add-in for Visual Studio.NETMar 16, 2005. An add-in is a tool that you create programmatically by using objects, methods, properties, collections in .NET's extensibility model. This compiled application enables you to automate the difficult and tedious tasks within the visual studio integrated development environment (IDE).
  • C# Custom Dial ControlMar 17, 2005. This article shows how to create and use custom dial control.
  • Localizable Message Box ControlApr 02, 2005. This is localizable MessageBox control. Buttons on standard windows message box controls are always Yes, No, Abort, Cancel, OK, Ignore, Retry. I needed different text on my message boxes so I decided to develop custom message box control.
  • Best Practices of CodingApr 13, 2005. This document covers a few recommendations to leverage the quality of the code in .NET using FXCop 1.30 and how to write custom rules through an introspection engine.
  • Revised C# Control of a DialMay 02, 2005. The C# Custom Dial Control is a custom dial control written using GDI+ and C#. This article and the attached source code is a revised version of my previous article with an extended version of the control.
  • Session Management in Web Garden Using Custom Components May 17, 2005. This article provides an insight on creating a custom Session Manager component using C#.
  • Session Management in Web Garden using Custom ComponentsMay 17, 2005. This article provides an insight on creating a custom Session Manager component using C#.
  • Custom Exception Handling in C#May 17, 2005. This article discusses the implementation of Custom Exception Handling using the existing features of C# .Net.
  • Custom Calendar ControlMay 19, 2005. The Custom Calendar Control described in this article overcomes the limitations of the DateTimePicker by enhancing the capabilities of the existing MonthCalendar Control available in Visual Studio .NET.
  • Custom Mouse-Joystick in C#Jun 10, 2005. It is a custom control that allows you to use your mouse as a joystick.
  • Revised Gauge Custom Control in C#Jun 10, 2005. This is an enhanced version of the custom guage. Enclosed are the source code for the control, and the test program.
  • OOPs Concepts and .NET Part 1: Classes, Objects, and StructuresJun 22, 2005. The following article kicks off a three-part article series that will present definitions and samples for different Object-Oriented Programming concepts and its implementation in .NET. The first part will examine the concepts of classes, objects, and structures. The second part will examine the concepts of inheritance, abstraction, and polymorphism. The third and last part will examine the concepts of interface, multiple interface inheritance, collections, and overloading.
  • OOPS Concepts and .NET Part 2: Inheritance, Abstraction, & PolymorphismJun 22, 2005. The following article is the second of a three-part article series that presents definitions and samples for different Object-Oriented Programming (OOP) concepts and its implementation in .NET. The first part examined the concepts of classes, objects, and structures. This part examines the concepts of inheritance, abstraction, and polymorphism. The third and last part will examine the concepts of interface, multiple interface inheritance, collections, and overloading.
  • Custom Assembly in Reporting ServicesJun 30, 2005. This article describes a problem that occurs when you access a custom assembly in your Reporting Services report that does not have sufficient permissions on the resources in your environment. The article also provides simple steps to grant permissions to the custom assemblies that are used in the reports.
  • Custom Error Handling Using ASP.NETJul 07, 2005. Sometimes in your application, you may want to show some decent error messages other than red error messages and some message when page is not found or server is busy. We will see custom error message handling mechanism in this article using ASP.NET.
  • Windows Forms Base ArchitectureJul 14, 2005. This base architecture is well suited for windows based development. This ease the development time required as well as it is developer friendly.
  • Programming with .NET Compact Framework 1.0 and SQL CE 2.0 : Part IIAug 11, 2005. In this article I am going to talk about garbage collection and JIT process in .NET compact framework and what are the differences between these two model of framework.
  • M.S. Visio AutomationAug 19, 2005. This article demonstrates the flexibility of Visio products as a development platform by describing the customized business solutions.
  • Enabling Membership Provider for SQL Server 2005Aug 22, 2005. ASP.NET 2.0 brings an important concept called provider model which is used for many new feature i.e. Membership Management, Role Management, Profiles, Web Parts Personalization etc.
  • How do I Implement Custom Event Handling in C#Oct 27, 2005. In this article, we are going to show, how we can call custom event on our designed conditions.

About Custom-collection

NA

SPONSORED BY

C# Corner Chandigarh DevCon16
Chandigarh DevCon16 is a one-day Developer Conference where programmers, technologists, authors, and members meet, demonstrate, plan, and hang out.
Download Free eBooks