Click here to Skip to main content

Articles by Daniel Vaughan (Articles: 24, Technical Blogs: 19, Tip/Tricks: 7)

Articles: 24, Technical Blogs: 19, Tip/Tricks: 7

RSS Feed

Average article rating: 4.93

Smart Client
General
Posted: 22 Mar 2009   Updated: 22 Mar 2009   Views: 105,065   Rating: 4.95/5    Votes: 126   Popularity: 10.39
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 214   Downloaded: 1,272
Knowledge acquired by a neural network is used to predict the element to which a user may intend to navigate.
ASP.NET
General
Posted: 26 Jan 2008   Updated: 25 Jan 2008   Views: 107,342   Rating: 4.91/5    Votes: 42   Popularity: 7.97
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 86   Downloaded: 479
A URL Object Serialization component that provides compression and encryption of CLR objects, enabling embedding within URLs. Also includes a user account purging component that performs the periodic removal of unconfirmed user accounts, and a website that demonstrates the user account confirmation.
Silverlight
General
Posted: 11 Nov 2007   Updated: 11 Nov 2007   Views: 92,831   Rating: 4.88/5    Votes: 60   Popularity: 8.68
Licence: Not specified      Bookmarked: 138   Downloaded: 782
A fun Silverlight implementation of the game Sokoban. Contrasting Silverlight 1.1 and WPF, while showcasing some new features of C# 3.0, Expression Design, Expression Blend, and Visual Studio 2008.
Posted: 25 Dec 2007   Updated: 27 Oct 2008   Views: 274,369   Rating: 4.96/5    Votes: 138   Popularity: 10.63
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 337   Downloaded: 911
Legion is a grid computing framework that uses the Silverlight CLR to execute user definable tasks. It provides grid-wide thread-safe operations for web clients. Client performance metrics, such as bandwidth and processor speed, may be used to tailor jobs. Also includes a WPF Manager application.
Posted: 22 Nov 2007   Updated: 16 Apr 2009   Views: 179,211   Rating: 4.84/5    Votes: 55   Popularity: 8.42
Licence: The Code Project Open License (CPOL)      Bookmarked: 111   Downloaded: 2,901
A customizable log provider system that allows you to harness your existing logging system to log client side messages to your server. Includes a Silverlight interface and Log Viewer.
Posted: 1 May 2010   Updated: 1 May 2010   Views: 76,786   Rating: 4.93/5    Votes: 69   Popularity: 9.07
Licence: The BSD License      Bookmarked: 168   Downloaded: 628
Reduce threading code, and increase UI responsiveness with a new pattern extending MVVM.
HowTo
Posted: 16 Nov 2008   Updated: 16 Nov 2008   Views: 240,297   Rating: 4.95/5    Votes: 47   Popularity: 8.27
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 84   Downloaded: 3,584
In this article, we look at the asynchronous web service model in Silverlight, and how it can be augmented to allow synchronous web service calls. We also explore efficient channel caching, and asynchronous Silverlight Unit Tests.
User Controls
General
Posted: 21 Oct 2007   Updated: 29 Dec 2007   Views: 48,686   Rating: 4.86/5    Votes: 19   Popularity: 6.24
Licence: The BSD License      Bookmarked: 60   Downloaded: 265
Yet another list pager, but this one can use LinkButtons or simple Hyperlinks, provides scrolling within an ASP.NET AJAX UpdatePanel, and behaves similarly to the paging found on Amazon.com.
Mobile Development
General
Posted: 15 Sep 2014   Updated: 15 Sep 2014   Views: 7,900   Rating: 5.00/5    Votes: 19   Popularity: 6.39
Licence: The Code Project Open License (CPOL)      Bookmarked: 38   Downloaded: 0
Create best-in-breed cross-platform MVVM apps using Calcium for Xamarin.Forms.
Posted: 17 Sep 2014   Updated: 17 Sep 2014   Views: 4,915   Rating: 5.00/5    Votes: 6   Popularity: 3.89
Licence: The Code Project Open License (CPOL)      Bookmarked: 15   Downloaded: 0
Create a Xamarin Forms tabbed page or carousel page by binding to a collection of ViewModels; extending beyond the current capabilities of Xamarin Forms.
Posted: 2 Oct 2014   Updated: 2 Oct 2014   Views: 3,957   Rating: 5.00/5    Votes: 5   Popularity: 3.49
Licence: The Code Project Open License (CPOL)      Bookmarked: 10   Downloaded: 0
Leverage existing .resx files to localize Windows Phone, Android, and iOS apps in Xamarin.Forms.
Posted: 7 Oct 2014   Updated: 7 Oct 2014   Views: 3,991   Rating: 4.94/5    Votes: 7   Popularity: 4.17
Licence: The Code Project Open License (CPOL)      Bookmarked: 9   Downloaded: 0
Using Xamarin Forms platform specific rendering to create a cross-platform application bar.
Windows Phone 7/8
General
Posted: 24 Mar 2010   Updated: 23 Jul 2010   Views: 126,811   Rating: 4.98/5    Votes: 88   Popularity: 9.68
Licence: The Code Project Open License (CPOL)      Bookmarked: 185   Downloaded: 5,863
Get a head start with the new Windows Phone 7 developer tools. Learn how to create a Sokoban game in Silverlight for the WP7 platform.
C#
General
Posted: 17 Oct 2009   Updated: 17 Oct 2009   Views: 22,762   Rating: 4.85/5    Votes: 13   Popularity: 5.40
Licence: The Microsoft Public License (Ms-PL)      Bookmarked: 26   Downloaded: 243
How to use an MSBuild custom task to provide compile time verification of string type names in app.config files.
Windows Presentation Foundation
Applications
Posted: 31 May 2009   Updated: 1 Jun 2009   Views: 141,774   Rating: 4.93/5    Votes: 69   Popularity: 9.08
Licence: The BSD License      Bookmarked: 207   Downloaded: 0
Calcium provides much of what one needs to rapidly build a multifaceted and sophisticated modular application. Includes a host of modules and services, and an infrastructure that is ready to use in your next application.
Posted: 21 Nov 2009   Updated: 21 Nov 2009   Views: 60,806   Rating: 4.96/5    Votes: 48   Popularity: 8.35
Licence: The BSD License      Bookmarked: 92   Downloaded: 0
Introducing the Calcium SDK. Calcium provides much of what one needs to rapidly build a multifaceted and sophisticated modular application. Includes a host of modules and services, and an infrastructure that is ready to use in your next application.
Posted: 5 Jul 2009   Updated: 23 Nov 2009   Views: 60,651   Rating: 5.00/5    Votes: 46   Popularity: 8.31
Licence: The BSD License      Bookmarked: 88   Downloaded: 0
Calcium provides much of what one needs to rapidly build a multifaceted and sophisticated modular application. Includes a host of modules and services, and an infrastructure that is ready to use in your next application.
Data Binding
Posted: 1 Nov 2007   Updated: 16 Jun 2008   Views: 79,673   Rating: 4.88/5    Votes: 42   Popularity: 7.91
Licence: The BSD License      Bookmarked: 76   Downloaded: 2,597
A fun implementation of the game Sokoban, written to showcase some features of WPF, C# 3.0, Expression Design, and Visual Studio 2008.
General
Posted: 1 Dec 2007   Updated: 25 Dec 2008   Views: 100,682   Rating: 4.77/5    Votes: 67   Popularity: 8.71
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 111   Downloaded: 744
A customizable log provider system that allows you to harness your existing logging system to log client side messages to your server using WCF. Includes WPF sample applications.
Posted: 24 Feb 2010   Updated: 24 Feb 2010   Views: 49,022   Rating: 4.98/5    Votes: 56   Popularity: 8.71
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 111   Downloaded: 0
A Desktop and Silverlight user action management system, with undo, redo, and repeat. Allowing actions to be monitored, and grouped according to a context (such as a UI control), executed sequentially or in parallel, and even to be rolled back on failure.
Posted: 13 Mar 2010   Updated: 13 Mar 2010   Views: 39,228   Rating: 4.97/5    Votes: 42   Popularity: 8.07
Licence: The BSD License      Bookmarked: 54   Downloaded: 0
A Desktop and Silverlight user action management system, with undo, redo, and repeat; allowing actions to be monitored, and grouped according to a context (such as a UI control), executed sequentially or in parallel, and even to be rolled back on failure.
Code Generation
General
Posted: 2 Sep 2009   Updated: 7 Nov 2009   Views: 77,341   Rating: 4.98/5    Votes: 45   Popularity: 8.23
Licence: The BSD License      Bookmarked: 146   Downloaded: 1,048
Generate project metadata with T4 and unburden yourself from string literals in XAML binding expressions and INotifyPropertyChanged event arguments.
Interviews
General
Posted: 28 Sep 2011   Updated: 28 Sep 2011   Views: 27,601   Rating: 4.89/5    Votes: 28   Popularity: 7.08
Licence: The Code Project Open License (CPOL)      Bookmarked: 13   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 Daniel Vaughan.
Posted: 23 Aug 2013   Updated: 23 Aug 2013   Views: 8,770   Rating: 5.00/5    Votes: 5   Popularity: 3.49
Licence: The Code Project Open License (CPOL)      Bookmarked: 6   Downloaded: 0
In honour of the 10 million member milestone, CodeProject members Sacha Barber and Daniel Vaughan reflect back on their time as part of the developer community.

Average blogs rating: 4.78

Files and Folders
Configuration Files
Posted: 25 Nov 2009   Updated: 25 Nov 2009   Views: 7,752   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 9   Downloaded: 0
How to use T4 to generate Pack URIs for XAML files.
Tabs & Property Pages
Tabs and Property Pages
Posted: 29 Aug 2009   Updated: 29 Aug 2009   Views: 15,668   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 12   Downloaded: 0
FeaturesDesktop and Silverlight CLR compatibilityCapability to perform assignment and raise appropriate events before and after assignment.Weak referencedProvides for both expression tree and loosely typed stringsUses extended EventArgs to supply before and after valuesExtended PropertyChang
Applications & Tools
Applications
Posted: 1 Aug 2010   Updated: 1 Aug 2010   Views: 10,821   Rating: 4.91/5    Votes: 4   Popularity: 2.96
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 11   Downloaded: 0
IntroductionToday the WPF Disciples, and in particular my good friend and fellow WPF Disciple, Pete O'Hanlon, were sitting around the proverbial campfire, discussing how to enforce single instance WPF apps, for Pete's cool Goldlight project. By single instance WPF apps, I mean limiting an executabl
Silverlight
General
Posted: 10 Jan 2010   Updated: 10 Jan 2010   Views: 13,461   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 7   Downloaded: 0
In this post, I would like to briefly discuss the System.Windows.Threading.Dispatcher class, and the significant differences between its Silverlight and Desktop CLR implementations.
Validation
Validation Controls
Posted: 7 Nov 2009   Updated: 7 Nov 2009   Views: 6,325   Rating: 4.33/5    Votes: 2   Popularity: 1.30
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 2   Downloaded: 0
Prompted by a recent comment on the T4 Metadata Generation template article, which I released some weeks ago, I have implemented a new mechanism for concatenating property paths. This allows compile time validation of properties that exist on composite or nested members.
Web Services
ATL Web Services
Posted: 19 Oct 2009   Updated: 19 Oct 2009   Views: 27,297   Rating: 4.90/5    Votes: 9   Popularity: 4.67
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 27   Downloaded: 0
There are two things I wanted to look at. Firstly, I wanted to allow a web service to be called after the Silverlight application’s Exit event is raised. Secondly, I wanted to provide the Silverlight application with the opportunity to cancel, or at least interrupt the close window process.
Android
General
Posted: 15 Apr 2013   Updated: 15 Apr 2013   Views: 4,637   Rating: 5.00/5    Votes: 1   Popularity: 0.00
Licence: The BSD License      Bookmarked: 3   Downloaded: 0
Generating localized resources in Mono for Android using T4.
Windows Phone 7/8
Controls
Posted: 20 Jul 2011   Updated: 20 Jul 2011   Views: 9,757   Rating: 0.0 / 5    Votes: 0   Popularity: 0.0
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 2   Downloaded: 268
The custom ProgressIndicatorProxy provides a simple way to harness the new ProgressIndicator from your XAML.
Posted: 20 Jul 2011   Updated: 20 Jul 2011   Views: 13,427   Rating: 4.00/5    Votes: 1   Popularity: 0.00
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 7   Downloaded: 568
Some really nice techniques for handling asynchronous network calls.
Posted: 26 Aug 2011   Updated: 26 Aug 2011   Views: 15,751   Rating: 4.95/5    Votes: 5   Popularity: 3.46
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 4   Downloaded: 0
The custom ProgressIndicatorProxy provides a simple way to harness the new ProgressIndicator from your XAML.
General
Posted: 24 Jan 2011   Updated: 24 Jan 2011   Views: 10,925   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 8   Downloaded: 0
Most phone users are concerned about network usage. Network traffic comes at a premium, and a user's perception of the quality of your app depends a lot on its responsiveness. When it comes to fetching data from a network service, it should be done in the most efficient manner possible. Making the u
Posted: 7 Apr 2012   Updated: 8 Apr 2012   Views: 6,786   Rating: 5.00/5    Votes: 2   Popularity: 1.51
Licence: The BSD License      Bookmarked: 1   Downloaded: 0
How to use T4 to generate Windows Phone WMAppManifest files.
C#
General
Posted: 14 Aug 2010   Updated: 26 Nov 2012   Views: 16,031   Rating: 5.00/5    Votes: 3   Popularity: 2.39
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 7   Downloaded: 0
The ReaderWriterLockSlim class is used to protect a resource that is read by multiple threads and written to by one thread at a time.
Windows Presentation Foundation
General
Posted: 17 Jul 2012   Updated: 17 Jul 2012   Views: 7,030   Rating: 5.00/5    Votes: 7   Popularity: 4.23
Licence: The BSD License      Bookmarked: 11   Downloaded: 0
Implementing field level change notification in WPF, and how a Lambda Expression can be used to specify a composite property that raises change notifications automatically whenever an associated property changes.
String handling
Text Search and Replace
Posted: 3 Oct 2009   Updated: 3 Oct 2009   Views: 9,535   Rating: 4.50/5    Votes: 3   Popularity: 2.15
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 8   Downloaded: 0
Banishing String Literals from XAML Resource References
Uncategorised Technical Blogs
General
Posted: 29 Aug 2009   Updated: 29 Aug 2009   Views: 6,625   Rating: 4.64/5    Votes: 5   Popularity: 3.24
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 2   Downloaded: 0
When developing an application, clearly it’s prudent to have uniformity in the manner certain tasks are carried out, thereby avoiding violation of the DRY principle. An example of this is displaying common dialog boxes. But wait, if you think this post is just going to be about an abstracted d
Posted: 29 Aug 2009   Updated: 29 Aug 2009   Views: 13,387   Rating: 4.60/5    Votes: 4   Popularity: 2.77
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 3   Downloaded: 0
IntroductionIt is generally considered good form to define a separate ServiceContract interface for all WCF services. By doing so, it decouples the contract from the implementation. Still, if we consume a service contract via conventional means such as generating a proxy using a ChannelFactory or u
Posted: 29 Aug 2009   Updated: 29 Aug 2009   Views: 8,698   Rating: 4.50/5    Votes: 3   Popularity: 2.15
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 6   Downloaded: 0
I have used T4 to build a metadata generator for your Silverlight and Desktop CLR projects. It can be used as a replacement for static reflection (expression trees), reflection (walking the stack), and various other means for deriving the name of a property, method, or field.
Posted: 5 Feb 2010   Updated: 5 Feb 2010   Views: 12,440   Rating: 4.78/5    Votes: 2   Popularity: 1.44
Licence: The GNU Lesser General Public License (LGPLv3)      Bookmarked: 5   Downloaded: 0
Yesterday, while chatting with the highly talented Jeremiah Morrill and other WPF Disciples about some MVVM subtleties (for the full post see here), Jeremiah briefly touched on the topic of providing ViewModels with the awareness of being active or inactive within a Prism based application. I wanted

Average tips rating: 4.57

Silverlight
General
Posted: 27 Feb 2010   Updated: 27 Feb 2010   Views: 10,251   Rating: 5.00/5    Votes: 5   Popularity: 3.49
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
Ordinarily the Application.Current.RootVisual.Dispatcher property is used to retrieve the System.Windows.Threading.Dispatcher for an application. Of course this won't work if performed before the RootVisual has been assigned. To get the Dispatcher for an application before the RootVisual has...
Posted: 27 Feb 2010   Updated: 27 Feb 2010   Views: 11,080   Rating: 4.00/5    Votes: 5   Popularity: 3.22
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
In order to detect whether your application is executing in a designer you can either use the GetIsInDesignMode method of DesignerProperties,or the Dependency Property metadata directly like so:C#:bool designTime = (bool)DesignerProperties.IsInDesignModeProperty.GetMetadata( ...
Windows Phone 7/8
General
Posted: 24 Oct 2010   Updated: 24 Oct 2010   Views: 8,197   Rating: 4.25/5    Votes: 3   Popularity: 2.03
Licence: The Code Project Open License (CPOL)      Bookmarked: 1   Downloaded: 0
Stop trailling nulls from preventing deserialization.
Libraries
General
Posted: 19 Feb 2010   Updated: 19 Feb 2010   Views: 5,424   Rating: 4.33/5    Votes: 3   Popularity: 1.43
Licence: The Code Project Open License (CPOL)      Bookmarked: 2   Downloaded: 0
When using the Calcium SDK[^]to replace the shell implementation entirely with your own implementation, use:void Application_Startup(object sender, StartupEventArgs e){ var container = new UnityContainer(); ServiceLocatorSingleton.Instance.InitializeServiceLocator(container); ...
Windows Presentation Foundation
General
Posted: 23 Feb 2010   Updated: 27 Feb 2010   Views: 15,559   Rating: 4.64/5    Votes: 7   Popularity: 3.85
Licence: The Code Project Open License (CPOL)      Bookmarked: 14   Downloaded: 0
In a WPF application, the first window opened is deemed to be the main window. In order to prevent an application from closing when an initial dialog is closed, use the Application.Current.ShutdownMode property as demonstrated in the following example:protected override void...
Posted: 27 Feb 2010   Updated: 24 Mar 2010   Views: 22,761   Rating: 4.75/5    Votes: 12   Popularity: 4.55
Licence: The Code Project Open License (CPOL)      Bookmarked: 4   Downloaded: 0
In order to detect whether your application is executing as a result of being in a designer use the GetIsInDesignMode method of DesignerProperties as the following demonstrate.C#bool designTime = System.ComponentModel.DesignerProperties.GetIsInDesignMode( new...
Programming Tips
General
Posted: 23 Nov 2009   Updated: 23 Nov 2009   Views: 9,683   Rating: 5.00/5    Votes: 9   Popularity: 4.77
Licence: The Code Project Open License (CPOL)      Bookmarked: 5   Downloaded: 0
A Visual Studio regex to remove someone's overzealous use of regions in VS. Find and replace: (^.*\#region.*$)|(^.*\#endregion.*$) Remember to enable regular expressions in the Visual Studio find and replace dialog.
No reference articles have been posted.

Daniel Vaughan
President Outcoder
Switzerland Switzerland
Daniel Vaughan is a Microsoft MVP and co-founder of Outcoder, a Swiss software and consulting company dedicated to creating best-of-breed user experiences and leading-edge back-end solutions, using the Microsoft stack of technologies--in particular WPF, WinRT, Windows Phone, and also Xamarin.Forms.
 
Daniel is the author of Windows Phone 8 Unleashed and Windows Phone 7.5 Unleashed, both published by SAMS.
 
Daniel is the developer behind several acclaimed Windows Phone apps including Surfy, Intellicam, and Splashbox; and is the creator of a number of popular open-source projects including Calcium SDK, and Clog.
 
Would you like Daniel to bring value to your organisation? Please contact

Daniel's Blog | MVP profile | Follow on Twitter
 
Windows Phone Experts
Follow on   Twitter   Google+   LinkedIn


Advertise | Privacy | Mobile
Web04 | 2.8.141015.1 | Last Updated 22 Oct 2014
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid