Я создаю пользовательский интерфейс в WPF, и мне нужно иметь элемент управления изображением в представлении, которое изменяется на конкретное изображение в зависимости от значения, возвращаемого из модели представления. В моем конкретном случае это просто светофор, поэтому он может быть красным, желтым или зеленым, и в зависимости от этого значения должно быть загружено соответствующее изображение.
так что в представлении у меня есть следующий элемент управления изображением ...
<Image Source="{Binding Path=ServerStatus, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Grid.Row="1" HorizontalAlignment="Left" Width="41" Height="34"/>
С другой стороны, ViewModel имеет этот код ...
//...
// The status of the server represented as a traffic light
public enum m_Enumeration_ServerStatus { Red, Yellow, Green };
private m_Enumeration_ServerStatus p_ServerStatus;
//...
/// <summary>
/// The status of the server represented as a traffic light
/// Red: stopped
/// yellow: starting
/// Green: Started
/// </summary>
public m_Enumeration_ServerStatus ServerStatus
{
get { return p_ServerStatus; }
set
{
base.RaisePropertyChangingEvent("ServerStatus");
p_ServerStatus = value;
base.RaisePropertyChangedEvent("ServerStatus");
}
}
Таким образом, представление будет "проинформировано" о PropertyChange.
Какой код мне нужно добавить, чтобы загрузить соответствующее изображение для установленного значения свойства?