Вы не можете напрямую использовать изображение для флажка, но вы можете использовать изображение для стандартного объекта Button и изменять фоновое изображение при каждом нажатии:
XAML:
<Button Click="Button_Click" x:Name="btnCheckbox">
<Button.Content>
<Image Source="Checkbox_Unselected.png" />
</Button.Content>
</Button>
Код позади:
private bool isCheckboxChecked = false;
private void Button_Click(object sender, RoutedEventArgs e)
{
isCheckboxChecked = !isCheckboxChecked;
this.CheckboxImage.Source = new System.Windows.Media.Imaging.BitmapImage(new Uri((isCheckboxChecked ? "Checkbox_Selected.png" : "Checkbox_Unselected.png")));
}
Очевидно, что было бы еще лучше связать isCheckboxChecked
со свойством в вашей модели, а не с частной переменной.