Click here to Skip to main content

Articles by John Simmons / outlaw programmer (Articles: 53, Tip/Tricks: 65)

Articles: 53, Tip/Tricks: 65

RSS Feed

Average article rating: 4.28

Clipboard
General
Posted: 16 Oct 2001   Updated: 15 Apr 2008   Views: 141,059   Rating: 3.74/5    Votes: 48   Popularity: 6.29
Licence: The Code Project Open License (CPOL)      Bookmarked: 53   Downloaded: 1,250
Helps with copying a device independant bitmap to the clipboard.
Dialogs and Windows
Dialogs
Posted: 26 Nov 2000   Updated: 16 Apr 2001   Views: 88,470   Rating: 2.98/5    Votes: 22   Popularity: 4.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 27   Downloaded: 1,877
Technique for utilizing a CResizablePage in a CFormView-derived class
Posted: 14 Dec 2008   Updated: 24 Jun 2010   Views: 85,146   Rating: 4.85/5    Votes: 51   Popularity: 8.27
Licence: The Code Project Open License (CPOL)      Bookmarked: 168   Downloaded: 2,207
Create a dynamically resizable wizard form
Form Views
Posted: 28 Nov 2000   Updated: 6 Jun 2001   Views: 158,308   Rating: 3.42/5    Votes: 39   Popularity: 5.44
Licence: Not specified      Bookmarked: 45   Downloaded: 2,258
Extension of Paolo Messina's CResizableDialog concept
General
Posted: 9 Aug 2005   Updated: 9 Aug 2005   Views: 54,197   Rating: 3.48/5    Votes: 25   Popularity: 4.86
Licence: Not specified      Bookmarked: 23   Downloaded: 746
Enumerate all controls in a dialog box or form view.
Document / View
General
Posted: 21 Jan 2001   Updated: 7 May 2001   Views: 87,463   Rating: 2.98/5    Votes: 29   Popularity: 4.36
Licence: The Code Project Open License (CPOL)      Bookmarked: 36   Downloaded: 1,616
Track a mouse click, even in a scrolled view
Files and Folders
Configuration Files
Posted: 27 Jan 2007   Updated: 27 Jan 2007   Views: 46,790   Rating: 4.56/5    Votes: 24   Popularity: 6.29
Licence: The Code Project Open License (CPOL)      Bookmarked: 43   Downloaded: 581
Implement XML application profiles that are similar (but not too similar) to using INI files
File System
Posted: 14 Feb 2010   Updated: 18 Dec 2010   Views: 130,515   Rating: 4.91/5    Votes: 88   Popularity: 9.55
Licence: The Code Project Open License (CPOL)      Bookmarked: 269   Downloaded: 8,728
How to get all the events you want - whether you need them or not.
Posted: 14 Feb 2010   Updated: 18 Dec 2010   Views: 72,217   Rating: 4.91/5    Votes: 71   Popularity: 9.08
Licence: The Code Project Open License (CPOL)      Bookmarked: 152   Downloaded: 1
Use the demo application (from Part 1) to observe events posted when creating files in the watched folder
General
Posted: 5 Feb 2011   Updated: 7 Feb 2011   Views: 25,903   Rating: 4.87/5    Votes: 23   Popularity: 6.62
Licence: The Code Project Open License (CPOL)      Bookmarked: 89   Downloaded: 1,696
Windows service for synchronizing folders
List Controls
List Controls
Posted: 8 Dec 2002   Updated: 8 Dec 2002   Views: 178,961   Rating: 3.42/5    Votes: 45   Popularity: 5.65
Licence: Not specified      Bookmarked: 31   Downloaded: 0
Some dialogbox code to give the Blonde a clue
Menus
Custom menus
Posted: 26 Jan 2007   Updated: 26 Jan 2007   Views: 68,745   Rating: 3.15/5    Votes: 62   Popularity: 5.63
Licence: Not specified      Bookmarked: 38   Downloaded: 965
Add menu items to, and learn how to handle the system menu
General
Posted: 12 May 2005   Updated: 12 May 2005   Views: 102,425   Rating: 3.03/5    Votes: 37   Popularity: 4.75
Licence: Not specified      Bookmarked: 35   Downloaded: 0
Build a menu and/or a toolbar dynamically without using resource files (well, almost).
Miscellaneous
General
Posted: 13 Oct 2008   Updated: 11 Dec 2010   Views: 77,506   Rating: 4.48/5    Votes: 48   Popularity: 7.52
Licence: The Code Project Open License (CPOL)      Bookmarked: 92   Downloaded: 464
Scrape the My Articles page here on CodeProject to keep an eye on your articles.
Posted: 11 Dec 2010   Updated: 13 Nov 2011   Views: 68,527   Rating: 4.95/5    Votes: 49   Popularity: 8.36
Licence: The Code Project Open License (CPOL)      Bookmarked: 65   Downloaded: 1,114
New and improved! Keep an eye on your CodeProject articles and reputation without having to log onto CP.
Grid Control
Posted: 13 May 2005   Updated: 13 May 2005   Views: 50,497   Rating: 3.18/5    Votes: 26   Popularity: 4.46
Licence: The Code Project Open License (CPOL)      Bookmarked: 11   Downloaded: 781
Create blinking cells for Chris Maunder's grid control.
Windows Forms
Posted: 2 Oct 2008   Updated: 2 Oct 2008   Views: 86,782   Rating: 4.42/5    Votes: 58   Popularity: 7.80
Licence: The Code Project Open License (CPOL)      Bookmarked: 129   Downloaded: 3,040
Discusses windows authentication and application-specific authentication for WinForm applications
Printing
General
Posted: 4 Jan 2009   Updated: 4 Jan 2009   Views: 39,605   Rating: 4.87/5    Votes: 24   Popularity: 6.72
Licence: The Code Project Open License (CPOL)      Bookmarked: 47   Downloaded: 881
A utility that you can use to "exercise" your inkjet printer without wasting a lot of ink or paper
Web Services
General
Posted: 26 May 2010   Updated: 27 May 2010   Views: 26,037   Rating: 4.95/5    Votes: 16   Popularity: 5.96
Licence: The Code Project Open License (CPOL)      Bookmarked: 20   Downloaded: 0
With some earlier design forethought, I was able to inject some significant code optimization into a current project.
Windows Phone 7/8
Windows Mobile
Posted: 22 Dec 2003   Updated: 22 Dec 2003   Views: 71,627   Rating: 3.51/5    Votes: 18   Popularity: 4.41
Licence: The Code Project Open License (CPOL)      Bookmarked: 24   Downloaded: 0
Add a scrollbar to a property page when the SIP is displayed.
GDI+
General
Posted: 28 Nov 2006   Updated: 8 May 2007   Views: 92,935   Rating: 4.76/5    Votes: 94   Popularity: 9.39
Licence: Not specified      Bookmarked: 97   Downloaded: 0
A method for programatically determining the appropriate foreground color based on the specified background color
General Graphics
Bitmaps
Posted: 28 Jul 2006   Updated: 28 Jul 2006   Views: 39,328   Rating: 3.73/5    Votes: 32   Popularity: 5.62
Licence: The Code Project Open License (CPOL)      Bookmarked: 28   Downloaded: 390
Copy a bitmap over a portion of another bitmap
Posted: 28 Sep 2008   Updated: 28 Sep 2008   Views: 32,879   Rating: 4.45/5    Votes: 28   Popularity: 6.41
Licence: The Code Project Open License (CPOL)      Bookmarked: 42   Downloaded: 711
Put text on a bitmap, make your winform app go full-screen, and say hello to some simple LINQ code.
C / C++ Language
General
Posted: 3 Aug 2006   Updated: 3 Aug 2006   Views: 20,440   Rating: 3.67/5    Votes: 11   Popularity: 3.82
Licence: Not specified      Bookmarked: 12   Downloaded: 118
A passable workaround for the COleDateTime formatting behavior in MFC8.
Posted: 27 Jan 2007   Updated: 27 Jan 2007   Views: 25,306   Rating: 4.63/5    Votes: 21   Popularity: 6.12
Licence: The Code Project Open License (CPOL)      Bookmarked: 17   Downloaded: 341
The right way to code using CodeProject for occasional support
Posted: 27 Jan 2007   Updated: 15 Apr 2008   Views: 44,265   Rating: 4.77/5    Votes: 43   Popularity: 7.79
Licence: The Code Project Open License (CPOL)      Bookmarked: 94   Downloaded: 482
The right way to code using CodeProject for occasional support
Posted: 27 Jan 2007   Updated: 15 Apr 2008   Views: 28,380   Rating: 4.80/5    Votes: 25   Popularity: 6.71
Licence: The Code Project Open License (CPOL)      Bookmarked: 24   Downloaded: 565
The right way to code using CodeProject for occasional support
Posted: 27 Jan 2007   Updated: 15 Apr 2008   Views: 22,930   Rating: 4.55/5    Votes: 20   Popularity: 5.92
Licence: The Code Project Open License (CPOL)      Bookmarked: 18   Downloaded: 339
The right way to code using CodeProject for occasional support
Posted: 27 Jan 2007   Updated: 13 Jan 2010   Views: 43,925   Rating: 4.65/5    Votes: 22   Popularity: 6.24
Licence: The Code Project Open License (CPOL)      Bookmarked: 27   Downloaded: 392
The right way to code using CodeProject for occasional support
C#
Applications
Posted: 14 Aug 2011   Updated: 20 Aug 2011   Views: 20,276   Rating: 4.83/5    Votes: 22   Popularity: 6.46
Licence: The Code Project Open License (CPOL)      Bookmarked: 24   Downloaded: 1,169
Keep more detailed track of your Codeproject reputation points.
Posted: 20 Aug 2011   Updated: 30 Aug 2011   Views: 14,771   Rating: 4.82/5    Votes: 8   Popularity: 4.34
Licence: The Code Project Open License (CPOL)      Bookmarked: 13   Downloaded: 516
Keep more detailed track of your Codeproject reputation points.
Posted: 14 Aug 2011   Updated: 30 Aug 2011   Views: 23,330   Rating: 4.92/5    Votes: 34   Popularity: 7.53
Licence: The Code Project Open License (CPOL)      Bookmarked: 41   Downloaded: 573
Keep more detailed track of your Codeproject reputation points.
Posted: 14 Aug 2011   Updated: 20 Sep 2012   Views: 17,079   Rating: 4.82/5    Votes: 19   Popularity: 6.16
Licence: The Code Project Open License (CPOL)      Bookmarked: 13   Downloaded: 282
Keep more detailed track of your Codeproject reputation points.
General
Posted: 17 May 2008   Updated: 17 May 2008   Views: 33,548   Rating: 4.30/5    Votes: 18   Popularity: 5.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 29   Downloaded: 183
One method for loading common and object-specific data from your app.config file.
Posted: 17 Dec 2008   Updated: 17 Dec 2008   Views: 33,126   Rating: 4.73/5    Votes: 9   Popularity: 4.52
Licence: The Code Project Open License (CPOL)      Bookmarked: 46   Downloaded: 373
A not-so-dotNet way to allow multiple programs to share a single settings file
VBScript
General
Posted: 7 May 2007   Updated: 7 May 2007   Views: 19,541   Rating: 3.57/5    Votes: 9   Popularity: 3.40
Licence: The Code Project Open License (CPOL)      Bookmarked: 17   Downloaded: 0
The VBScript version of my C# article about the very same thing
STL
Collections and Iterators
Posted: 9 Dec 2002   Updated: 9 Dec 2002   Views: 90,664   Rating: 3.18/5    Votes: 23   Popularity: 4.33
Licence: The Code Project Open License (CPOL)      Bookmarked: 14   Downloaded: 0
One technique for performing a binary insertion sort on a std::list
Windows Presentation Foundation
Applications
Posted: 14 Oct 2012   Updated: 4 Nov 2012   Views: 25,309   Rating: 4.97/5    Votes: 14   Popularity: 5.69
Licence: The Code Project Open License (CPOL)      Bookmarked: 37   Downloaded: 889
My Anagrams game ported to WPF.
Utilities
Posted: 16 Dec 2014   Updated: 16 Dec 2014   Views: 10,852   Rating: 4.82/5    Votes: 28   Popularity: 7.05
Licence: The Code Project Open License (CPOL)      Bookmarked: 14   Downloaded: 0
Eliminate the tedium of generating model and viewmodel classes for your WPF projects, and save a butt-load of time in the process.
Algorithms & Recipes
Parsers and Interpreters
Posted: 30 Jul 2007   Updated: 21 Dec 2008   Views: 47,528   Rating: 4.33/5    Votes: 19   Popularity: 5.53
Licence: A Public Domain dedication      Bookmarked: 38   Downloaded: 217
Parse a string with quoted elements, insert/add/delete elements, and is CLS compliant
Cryptography & Security
General
Posted: 4 Oct 2010   Updated: 5 Oct 2010   Views: 28,945   Rating: 4.90/5    Votes: 19   Popularity: 6.35
Licence: The Code Project Open License (CPOL)      Bookmarked: 40   Downloaded: 263
One way to create a completely random encryption key, and sharing it with a client application
Date and Time
Tools
Posted: 1 Oct 2008   Updated: 1 Oct 2008   Views: 38,230   Rating: 4.69/5    Votes: 55   Popularity: 8.17
Licence: The Code Project Open License (CPOL)      Bookmarked: 80   Downloaded: 321
Implement repetitive tasks at consistent intervals
DLLs & Assemblies
General
Posted: 30 Nov 2006   Updated: 30 Nov 2006   Views: 103,660   Rating: 4.38/5    Votes: 51   Popularity: 7.47
Licence: The Code Project Open License (CPOL)      Bookmarked: 47   Downloaded: 950
Two methods to retrieve the path/name of a VS2002 or higher DLL from within that DLL.
Game Development
Games
Posted: 7 Apr 2008   Updated: 4 Nov 2012   Views: 79,607   Rating: 4.70/5    Votes: 35   Popularity: 7.19
Licence: The Code Project Open License (CPOL)      Bookmarked: 69   Downloaded: 2,532
The classic word game using words and letter scores allowed in Scrabble
Programming Tips
Design and Strategy
Posted: 5 Dec 2006   Updated: 5 Dec 2006   Views: 92,357   Rating: 3.02/5    Votes: 39   Popularity: 4.80
Licence: The Code Project Open License (CPOL)      Bookmarked: 18   Downloaded: 0
Compare floating point numbers for equality at programmer-specified precision.
String handling
General
Posted: 11 Dec 2001   Updated: 12 Dec 2001   Views: 165,153   Rating: 3.39/5    Votes: 32   Popularity: 5.10
Licence: The Code Project Open License (CPOL)      Bookmarked: 17   Downloaded: 0
A small function to either accept or create a UUID* and return a CString
Posted: 19 Jan 2001   Updated: 14 Mar 2002   Views: 159,540   Rating: 3.89/5    Votes: 53   Popularity: 6.70
Licence: Not specified      Bookmarked: 43   Downloaded: 1,150
Parse strings with specified delimiter and specified quote character
Posted: 17 Nov 2006   Updated: 17 Nov 2006   Views: 69,999   Rating: 3.79/5    Votes: 24   Popularity: 5.23
Licence: Not specified      Bookmarked: 11   Downloaded: 0
A technique for making stdio functions compile clean regardless of the Microsoft compiler used
Threads, Processes & IPC
Thread Pooling
Posted: 7 Feb 2010   Updated: 17 Mar 2010   Views: 81,877   Rating: 4.94/5    Votes: 73   Popularity: 9.21
Licence: The Code Project Open License (CPOL)      Bookmarked: 295   Downloaded: 2,159
Tie it all together and not lose your mind in the process
Debug Tips
General
Posted: 29 Nov 2006   Updated: 29 Nov 2006   Views: 38,813   Rating: 4.53/5    Votes: 21   Popularity: 5.98
Licence: Not specified      Bookmarked: 29   Downloaded: 566
Here's some code that will automatically start your app on a secondary monitor if it's compiled with debug info.
Work Issues
The Developer's Life
Posted: 24 Oct 2008   Updated: 24 Oct 2008   Views: 143,086   Rating: 4.80/5    Votes: 202   Popularity: 11.05
Licence: The Code Project Open License (CPOL)      Bookmarked: 169   Downloaded: 0
My views on how to be a proper programmer
Hardware & System
Hardware
Posted: 14 Apr 2008   Updated: 10 Jan 2011   Views: 221,180   Rating: 4.89/5    Votes: 69   Popularity: 8.99
Licence: The Code Project Open License (CPOL)      Bookmarked: 128   Downloaded: 0
How to go about buildingyour own NAS device
Interviews
General
Posted: 14 Sep 2011   Updated: 14 Sep 2011   Views: 34,630   Rating: 4.97/5    Votes: 52   Popularity: 8.53
Licence: The Code Project Open License (CPOL)      Bookmarked: 8   Downloaded: 0
Welcome to our continuing series of Code Project interviews in which we talk to developers about their backgrounds, projects, interests and pet peeves. In this installment we track down Code Project member John Simmons.
No blogs have been submitted.

Average tips rating: 4.80

Dialogs and Windows
General
Posted: 28 Feb 2010   Updated: 21 May 2010   Views: 29,091   Rating: 4.75/5    Votes: 4   Popularity: 2.81
Licence: The Code Project Open License (CPOL)      Bookmarked: 6   Downloaded: 0
Control resizing is a bit more mysterious than it might appear at first glance.
Posted: 22 Nov 2011   Updated: 22 Nov 2011   Views: 9,891   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
Allow any nnumber of forms to be used as a main form with easy transitions between forms.
Posted: 21 Jan 2010   Updated: 22 Nov 2011   Views: 34,839   Rating: 4.86/5    Votes: 40   Popularity: 7.79
Licence: The Code Project Open License (CPOL)      Bookmarked: 23   Downloaded: 0
A useful technique that could be used for winform apps which require a login dialog.
Grid & Data Controls
General
Posted: 10 Nov 2011   Updated: 10 Nov 2011   Views: 3,163   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
If you use DataSet.GetXML, it returns the Dataset in the form of a XML string. Using Dataset.ReadXml will populate a Dataset from an XML string (or a stream).Lastly, your premise for the tip itself is flawed. Ninety nine times out of 100, a report is indeed SUPPOSED to query the database. ...
Menus
General
Posted: 14 Sep 2011   Updated: 14 Sep 2011   Views: 24,130   Rating: 4.78/5    Votes: 8   Popularity: 4.52
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
How to automatically display a winforms menu when the mouse is hovered over an item
Posted: 9 Nov 2012   Updated: 9 Nov 2012   Views: 4,695   Rating: 4.89/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
Stuck on a really weird problem in WPF? Move your behind and write some code (behind).
ASP.NET
General
Posted: 3 Mar 2010   Updated: 24 Jun 2010   Views: 12,485   Rating: 4.80/5    Votes: 9   Popularity: 4.53
Licence: The Code Project Open License (CPOL)      Bookmarked: 13   Downloaded: 0
A low-impact method for getting the appropriate path on a web page.
Posted: 17 Jun 2011   Updated: 17 Jun 2011   Views: 6,836   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
Back-tracking to make sure code is processed before the current page executes
Posted: 21 Jun 2011   Updated: 21 Jun 2011   Views: 9,302   Rating: 3.33/5    Votes: 3   Popularity: 1.91
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
How to execute code in the current page AFTER navigating to a new page.
Posted: 22 Jun 2011   Updated: 23 Jun 2011   Views: 24,702   Rating: 4.67/5    Votes: 6   Popularity: 3.70
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
One way to guarantee uniqueness and avoid misspelling your session variable names
Silverlight
General
Posted: 20 Apr 2010   Updated: 21 May 2010   Views: 14,231   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
Dorothy was right - there's no place like home.
Posted: 17 May 2010   Updated: 21 May 2010   Views: 7,455   Rating: 4.50/5    Votes: 4   Popularity: 3.01
Licence: The Code Project Open License (CPOL)      Bookmarked: 6   Downloaded: 0
Follow these guidelines for trouble-free dictionary merging in Silverlight
Posted: 9 Jun 2010   Updated: 9 Jun 2010   Views: 8,265   Rating: 4.67/5    Votes: 5   Popularity: 3.49
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
The Silverlight navigation app ErrorWindow exposes the last exception thrown, but doesn't show the INNER exceptions. Here's how you can do it.
Posted: 19 Jun 2010   Updated: 19 Jun 2010   Views: 9,277   Rating: 4.75/5    Votes: 5   Popularity: 3.32
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
What to do if you want to resue a style for more than one component of a particular type on a given Silverlight Page
Posted: 5 Aug 2010   Updated: 12 Aug 2010   Views: 9,930   Rating: 5.00/5    Votes: 8   Popularity: 4.52
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
Get around another irrational and arbitrary omission in Silverlight
Posted: 11 Aug 2010   Updated: 12 Aug 2010   Views: 7,839   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
If you need to get the position the mouse was clicked, in relation to a specific UI Element, this might help
Posted: 7 Mar 2011   Updated: 7 Mar 2011   Views: 6,422   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
Extension method that checks for a properly Xaml-ized string
Posted: 9 May 2011   Updated: 9 May 2011   Views: 11,588   Rating: 4.64/5    Votes: 9   Popularity: 4.29
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
Get access to your Silverlight MainPage object
Web Security
General
Posted: 5 Jul 2011   Updated: 5 Jul 2011   Views: 1,953   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
I do it this way:0) Create a base page class, and store the current page's url (you can do this any number of ways, so I'll leave it to your imagination):public class MyBasepage : System.Web.UI.Page{ public string CurrentUrl { get; set; } }1) Store the page's Url to a...
Database
General
Posted: 5 Jan 2011   Updated: 5 Jan 2011   Views: 4,160   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
You can also enclose your column name in brackets, like so: [Create Date]
Posted: 26 May 2011   Updated: 26 May 2011   Views: 7,293   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
When all else fails, fire off some events and bask in the glow of the IDE's Progress tab.
Posted: 26 Jul 2011   Updated: 26 Jul 2011   Views: 11,782   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
One way to effectively zero the columns any DataRow object.
Posted: 25 Jul 2011   Updated: 10 Aug 2011   Views: 66,063   Rating: 4.88/5    Votes: 35   Popularity: 7.53
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
Just say no to SELECT * in your SQL
General Graphics
General
Posted: 18 Feb 2011   Updated: 19 Feb 2011   Views: 17,433   Rating: 5.00/5    Votes: 7   Popularity: 4.23
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
Determine the number of unique colors in an image
C#
Delegates and Events
Posted: 25 Jul 2012   Updated: 25 Jul 2012   Views: 5,878   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 21
Evaluating epressions in an ad-hoc condition.
.NET Framework
General
Posted: 13 Jan 2010   Updated: 22 May 2010   Views: 16,858   Rating: 4.76/5    Votes: 21   Popularity: 6.28
Licence: The Code Project Open License (CPOL)      Bookmarked: 5   Downloaded: 0
Don't reinvent the wheel - use the one that's already on the cart.
Posted: 18 Jan 2010   Updated: 22 May 2010   Views: 13,290   Rating: 5.00/5    Votes: 16   Popularity: 6.02
Licence: The Code Project Open License (CPOL)      Bookmarked: 10   Downloaded: 0
Don't drink the kool-aid. You still need to know how to use the Windows API in .Net apps.
Posted: 5 Apr 2011   Updated: 6 Apr 2011   Views: 7,161   Rating: 4.64/5    Votes: 10   Popularity: 4.64
Licence: The Code Project Open License (CPOL)      Bookmarked: 5   Downloaded: 0
Never assume you know what the framework is going to do
Posted: 11 Sep 2013   Updated: 12 Sep 2013   Views: 11,282   Rating: 4.82/5    Votes: 5   Popularity: 3.41
Licence: The Code Project Open License (CPOL)      Bookmarked: 8   Downloaded: 0
One approach to find a specific exception type inside the containing exception
Windows Communication Foundation
General
Posted: 26 Jan 2011   Updated: 26 Jan 2011   Views: 14,655   Rating: 5.00/5    Votes: 4   Popularity: 3.01
Licence: The Code Project Open License (CPOL)      Bookmarked: 8   Downloaded: 0
When you need to communicate with the app that contains your ServiceHost object, use custom events
Windows Presentation Foundation
Controls
Posted: 15 Jun 2012   Updated: 15 Jun 2012   Views: 16,141   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
One way to get around the "invalid character" error
General
Posted: 29 May 2010   Updated: 29 May 2010   Views: 21,067   Rating: 4.43/5    Votes: 7   Popularity: 3.80
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
One technique for having a column width that grows/shrinks with ListView width
Posted: 17 Nov 2014   Updated: 17 Nov 2014   Views: 3,277   Rating: 4.00/5    Votes: 3   Popularity: 1.67
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
How to fix this ANNOYING problem
Algorithms & Recipes
General
Posted: 10 May 2011   Updated: 10 May 2011   Views: 15,863   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
See if an integer value is a valid value for the given "flags" enumerator
Posted: 7 Jul 2011   Updated: 7 Jul 2011   Views: 2,022   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
.Net 4 has the enum.HasFlag() method, which kinda obsoletes this tip. :)
Posted: 9 Aug 2012   Updated: 12 Nov 2012   Views: 9,280   Rating: 4.90/5    Votes: 3   Popularity: 2.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 6   Downloaded: 137
Presenting a DateTime extension class that allows you to determine the actual date of the specified instance of the specified weekday within the specified month/year.
Cryptography & Security
General
Posted: 15 Oct 2014   Updated: 15 Oct 2014   Views: 3,845   Rating: 4.71/5    Votes: 7   Popularity: 3.96
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
Retrieve certificates from the system certificate store
Date and Time
General
Posted: 19 Jan 2011   Updated: 19 Jan 2011   Views: 14,615   Rating: 4.80/5    Votes: 12   Popularity: 5.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 10   Downloaded: 0
Determine if specified date/time properrties are equal
Posted: 10 Nov 2011   Updated: 10 Nov 2011   Views: 4,373   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
How about this?public static class ExtendDateTime{ public int CountWeekDays(this DateTime thisdate, DateTime thatDate) { int days = Math.Abs((thisDate - thatDate).Days) + 1; return = ((days/7) * 5) + (days % 7); }}Usage would be like this:DateTime...
Posted: 27 Oct 2014   Updated: 27 Oct 2014   Views: 3,112   Rating: 4.77/5    Votes: 4   Popularity: 2.85
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
Extension method to determine fiscal date
DLLs & Assemblies
General
Posted: 10 May 2013   Updated: 10 May 2013   Views: 2,637   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
Determine the nature of the entry assembly
Internet / Network
General
Posted: 7 May 2010   Updated: 21 May 2010   Views: 11,774   Rating: 4.63/5    Votes: 8   Popularity: 4.18
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
Make interfacing with your web service simpler and more maintainable
Posted: 6 Jun 2010   Updated: 6 Jun 2010   Views: 7,756   Rating: 4.25/5    Votes: 4   Popularity: 2.41
Licence: The Code Project Open License (CPOL)      Bookmarked: 8   Downloaded: 0
It's not as simple as just calling DirectoryInfo.GetFiles()
Programming Tips
General
Posted: 11 Apr 2010   Updated: 22 May 2010   Views: 10,754   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
Programatically set grid row/column sizes (yes, even "Auto", "*", and "X*" - thanks Nish).
Posted: 22 May 2010   Updated: 22 May 2010   Views: 19,489   Rating: 4.93/5    Votes: 6   Popularity: 3.84
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
In WPF/Silverlight, you might want to bind to a dictionary. Here's a couple of websites I found.
Posted: 4 Mar 2010   Updated: 26 Aug 2010   Views: 9,006   Rating: 4.70/5    Votes: 10   Popularity: 4.67
Licence: The Code Project Open License (CPOL)      Bookmarked: 12   Downloaded: 0
You probably have better things to do than writing tedious comparison methods.
Posted: 26 Dec 2010   Updated: 26 Dec 2010   Views: 4,070   Rating: 5.00/5    Votes: 4   Popularity: 3.01
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
Can't you just call Enum.GetNames(), and then bind to the collection returned by that method?
Posted: 19 Jan 2011   Updated: 25 Jan 2011   Views: 25,863   Rating: 4.91/5    Votes: 30   Popularity: 7.32
Licence: The Code Project Open License (CPOL)      Bookmarked: 37   Downloaded: 0
How to make your app detect whether or not it's running in admin mode.
Posted: 1 Feb 2011   Updated: 2 Feb 2011   Views: 15,641   Rating: 4.96/5    Votes: 17   Popularity: 6.10
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
How to determine if your .Net app is running in the Visual Studio IDE
Posted: 9 Feb 2011   Updated: 9 Feb 2011   Views: 3,111   Rating: 5.00/5    Votes: 6   Popularity: 3.89
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
StringBuilder mystring = new StringBuilder("AbCd");for (int i = 0; i < mystring.Length; i++){ char c = mystring[i]; mystring[i] = Char.IsLower(c) ? Char.ToUpper(c) : Char.ToLower(c);}
Posted: 4 Apr 2011   Updated: 5 Apr 2011   Views: 7,341   Rating: 4.84/5    Votes: 17   Popularity: 5.95
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
What to do when the "you're a moron" epiphany smacks you in the head just after you've convinced yourself you're pretty clever.
Posted: 17 May 2011   Updated: 17 May 2011   Views: 3,373   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
This is how I do it (we determine the host and select the appropriate endpoint).// these are the endpoints define in the webconfig filestring LocalHostEndpointName = "LocalHost_Endpoint";string ProductionEndpointName = "Production_Endpoint";string CurrentEndpoint = "";//...
Posted: 20 Feb 2010   Updated: 9 Jul 2011   Views: 7,533   Rating: 5.00/5    Votes: 5   Popularity: 3.49
Licence: The Code Project Open License (CPOL)      Bookmarked: 6   Downloaded: 0
Avoid exceptions when setting enumerators from unknown/untrusted sources.
Posted: 23 Jul 2011   Updated: 23 Jul 2011   Views: 3,251   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 0   Downloaded: 0
I wouldn't create a class for this. I'd make it an extension method, and then do this:public static class String Extensions{ public static string Reverse(this string value) { value = // do your reverse code here; return value; }}// Usage:string x...
Posted: 24 May 2010   Updated: 29 Aug 2011   Views: 19,997   Rating: 4.83/5    Votes: 20   Popularity: 6.27
Licence: The Code Project Open License (CPOL)      Bookmarked: 22   Downloaded: 0
Using a delegate could pull your butt out of the fire when you don't want to refactor code to add functionality.
Posted: 20 Dec 2011   Updated: 20 Dec 2011   Views: 11,329   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
You have everything you need to do your job as a developer. You just need to use them.
Posted: 23 Apr 2010   Updated: 10 Jul 2014   Views: 20,970   Rating: 4.74/5    Votes: 17   Popularity: 5.82
Licence: The Code Project Open License (CPOL)      Bookmarked: 15   Downloaded: 0
Extension methods can help you avoid sticky situations.
String handling
General
Posted: 1 Jan 2011   Updated: 1 Jan 2011   Views: 15,421   Rating: 4.82/5    Votes: 4   Popularity: 2.61
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
We're up to .Net 4 and MS *still* hasn't given us this simple functionality
Uncategorised Tips and Tricks
General
Posted: 11 Jul 2011   Updated: 11 Jul 2011   Views: 9,475   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
42!
Posted: 18 Apr 2013   Updated: 18 Apr 2013   Views: 18,437   Rating: 4.89/5    Votes: 2   Popularity: 1.51
Licence: The Code Project Open License (CPOL)      Bookmarked: 5   Downloaded: 0
Go here for an update that utilizes the Twitter API v1.1
Design and Architecture
General
Posted: 24 Jan 2010   Updated: 22 May 2010   Views: 5,155   Rating: 3.00/5    Votes: 2   Popularity: 0.90
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
Essential programmer skill - the ability to approach a problem from more that one direction.
Testing and QA
General
Posted: 22 Jan 2010   Updated: 22 May 2010   Views: 4,930   Rating: 4.61/5    Votes: 8   Popularity: 4.16
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
No change is too small for a complete regression test.
Scrapbook
General
Posted: 26 Jan 2010   Updated: 22 May 2010   Views: 9,987   Rating: 4.95/5    Votes: 21   Popularity: 6.53
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
Humor - Things to consider when your're out and about when the world starts to come to an end.
Posted: 23 Jan 2015   Updated: 23 Jan 2015   Views: 2,654   Rating: 4.82/5    Votes: 5   Popularity: 3.36
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
Some things to be aware of.
Author Resources
General
Posted: 13 Jan 2010   Updated: 22 May 2010   Views: 10,413   Rating: 4.74/5    Votes: 9   Popularity: 4.55
Licence: The Code Project Open License (CPOL)      Bookmarked: 3   Downloaded: 0
Bad formatting will delay the approval of your articles. Follow these basic rules to avoid that delay.
No reference articles have been posted.

John Simmons / outlaw programmer
Software Developer (Senior)
United States United States
I've been paid as a programmer since 1982 with experience in Pascal, and C++ (both self-taught), and began writing Windows programs in 1991 using Visual C++ and MFC. In the 2nd half of 2007, I started writing C# Windows Forms and ASP.Net applications, and have since done WPF, Silverlight, WCF, web services, and Windows services.
 
My weakest point is that my moments of clarity are too brief to hold a meaningful conversation that requires more than 30 seconds to complete. Thankfully, grunts of agreement are all that is required to conduct most discussions without committing to any particular belief system.


Advertise | Privacy | Mobile
Web02 | 2.8.150129.1 | Last Updated 1 Feb 2015
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid