Я новичок в WPF и MVVM (начал на этой неделе экспериментировать с ним) и пытаюсь связать ресурсы изображений во время выполнения.Элементы, которые я пытаюсь отобразить, содержат свойство enumerate, которое указывает тип или состояние элемента:
public class TraceEvent
{
/// <summary>
/// Gets or sets the type of the event.
/// </summary>
/// <value>The type of the event.</value>
public TraceEventType EventType { get; set; }
}
Насколько мне известно, атрибут Source для Image имеет конвертер значений, который принимает строки и возвращаетUri объекты.
<Image Source="{Binding Path=EventType, StringFormat={}/AssemblyName;component/Images/{0}Icon.ico}" />
Так почему же не работает выше?Если я вхожу в URI напрямую (без привязки) изображение отображается отлично.Фактически, если я сделаю привязку в TextBlock и использую результат этого значения в изображении, также показанном без проблем:
<TextBlock Visibility="Collapsed" Name="bindingFix" Text="{Binding Path=EventType, StringFormat={}/AssemblyName;component/Images/{0}Icon.ico}"/>
<Image Source="{Binding ElementName=bindingFix, Path=Text}" />
Я почти уверен, что делаю что-то ужасное неправильно для такогоочевидная вещь, чтобы сделать с изображениями.
Спасибо.