Every one knows that when different threads write to the same data structure they need to be synced.

Lets assume we have a Service that exposed a single function Add which added the value received to a List.

   1: public class ListWrapper

   2: {

   3:     private readonly List<int> m_list =new List<int>();


   5:     public void Add(int i)

   6:     {

   7:         m_list.Add(i);

   8:     }

   9: }

In order to make it thread safe we would simply lock the List so if multiple thread try to access this function they will add their values to the list each at a time.

   1: public void Add(int i)

   2: {

   3:     lock (m_list)

   4:     {

   5:         m_list.Add(i);

   6:     }

   7: }

For 99.9% of the applications this is a good solution.

Continue Reading...




I you worked with the WebBrowser control you probably met the following popup:


script error


I have started to use the WPF WebBrowser control in some of my applications but when I tried to disable the script errors I had a small problem the property WebBrowser.ScriptErrorsSuppressed  was not there, bummer…


Continue Reading...

July 12, 2009


Hey all   I am sorry for the long absence but I just got married and went on a great honeymoon, so I was not around!   I hope things will start to pick up from now.   Just wanted to let you all know that we are back online, and to tell you that […]

Continue Reading...



When working with WPF I always found myself thinking how to handle Data formatting when a WPF control was bound to it. Let’s look at the following example of a window with a TextBlock that displays a DateTime:

   1: <Window x:Class="BindingFormat.Window1"

   2:     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

   3:     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

   4:     Title="Window1" Height="300" Width="300">

   5:     <Grid>

   6:         <TextBlock Text="{Binding}"></TextBlock>

   7:     </Grid>

   8: </Window>

Continue Reading...

This article was written by Alan Mendelevich

The Problem

Creating a shape with bullets on the joints of it’s segments sounds like a really trivial task at a first glance. Just plaster some bullets on top of the shape. And it is really something like this until you decide you want to have transparent outlined bullets or opaque bullets with transparent outline around them. Like the ones in this picture:



Continue Reading...

This article was written by Alan Mendelevich




Recently I’ve been working on a set of custom WPF controls.

There are numerous good books and articles about WPF in general and some basic information on custom control development but I have yet to find a good article (or book) with in-depth coverage of custom control development in general and design-time related issues in particular.


Continue Reading...

Hey all,


a while back we had 2 great posts and one page about visual studio shortcuts. The first one had a list of 10 Visual Studio Shortcuts and the second one had 11 Visual Studio Shortcuts. We also have a Visual Studio CheatSheet with all the Keyboard shortcuts Visual Studio has.


Here is another list of 5 Shortcuts I have picked up along the way.


Continue Reading...

Hey all.


Nothing new for this month so apart from reminding you that if you want to make a quick 30$ all you have to do is to drop us an good unique article (you can get more information on our Make Money Writing Articles Page). I will move on to the stats.


Here are March’s Stats:

Continue Reading...



I wanted to show the usage of these two very useful debugger attributes. If you don’t know them keep on reading, they are very useful.



This attribute allows you to customize the way an object is displayed. lets look at the following example:

Continue Reading...



Here is a problem that one of my colleagues who is just starting to use WPF got himself into. He was working on an application that displays items using an ItemsControl and uses a DataTemplate. Inside the DataTemplate he used an Image. Here is the Xaml code:


   1: <Window.Resources>
   2:         <Image Source="Creek.jpg" x:Key="IMG"></Image>
   3:     </Window.Resources>
   4:     <Grid>
   5:         <ItemsControl ItemsSource="{Binding}">
   6:             <ItemsControl.ItemTemplate>
   7:                 <DataTemplate>
   8:                     <Border BorderThickness="2" BorderBrush="Black" 
   9:                             CornerRadius="3" MinHeight="10">
  10:                         <ContentControl Content="{StaticResource IMG}"/>
  11:                     </Border>
  12:                 </DataTemplate>
  13:             </ItemsControl.ItemTemplate>
  14:         </ItemsControl>
  15:     </Grid>

This is a much simpler example, but the principal is the same.


Can you see what was he doing wrong?

Continue Reading...