Set DataGrid's AutoGenerateColumns property to false. Hope this helps.
<pre lang="xml"><my:DataGrid AutoGenerateColumns="False" Margin="36,23,45,112" Name="dataGrid1" Grid.Row="1" Background="White" VerticalGridLinesBrush="DarkGray" VerticalScrollBarVisibility="Hidden" xmlns:my="http://schemas.microsoft.com/wpf/2008/toolkit" >
<my:DataGrid.Columns>
<my:DataGridTemplateColumn Header="Icon" Width="50" IsReadOnly="True" >
<my:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="{Binding Path=ImgPath}" Width="20" Height="20"/>
</DataTemplate>
</my:DataGridTemplateColumn.CellTemplate>
</my:DataGridTemplateColumn>
<my:DataGridTextColumn Header="Position" Binding="{Binding Path=PO}" />
<my:DataGridTextColumn Header=" Name" Binding="{Binding Path=NA}" />
<my:DataGridTextColumn Header="Gender" Binding="{Binding Path=GE}" />
<my:DataGridTextColumn Header="Status" Binding="{Binding Path=ST}" />
<my:DataGridTextColumn Header="Machine" Binding="{Binding Path=MA}" />
</my:DataGrid.Columns>
</my:DataGrid>