I have a Listbox bound to an ObservableCollection of ImageMetadata class. Item template of Listbox is defined as
<Image Source="{Binding Converter={StaticResource ImageConverter}}" />
ImageConverter is written as
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        var metadata = (ImageMetadata)value;
        if (metadata.IsPublic)
        {
            //code to return the image from path
        }
        else
        {
            //return default image
        }
     }
ImageMetadata is the 'Model' class written as
class ImageMetadata : INotifyPropertyChanged
{
    public string ImagePath
    {
        ......
    }
    public bool IsPublic
    {
        ......
    }
}
When an image is updated, I will trigger PropertyChanged event as given below
NotifyPropertyChanged("ImagePath");
Problem here is that : NotifyPropertyChanged event will not work since I am specifying the changed property name as 'ImagePath' and the binding is to 'ImageMetadata' object rather than 'ImagePath' property.
I cannot use
<Image Source="{Binding ImagePath, Converter={StaticResource ImageConverter}}" />
since I need the IsPublic property also to decide which image to display.
How can I modify the code to properly fire PropertyChanged event?
Edit : I am developing for Windows phone 8.