Я строю маленькое приложение Wpf, чтобы изучить себя.И я столкнулся с проблемой с одним из контроллеров.У меня есть объект со списком URL-адресов в строковом формате, и я хочу связать их с изображением и использовать класс конвертера wpf для преобразования URL-адресов в растровые изображения.
Но когда я реализую конвертер, программавыдает следующую ошибку:
'XmlParseException был необработан'
И в деталях говорится следующее:
"{" Невозможно привести объект типа 'ChanGrabber.Converter' к типу 'System.Windows.Data.IValueConverter'. "}"
Это код для ссылки на преобразователь в xaml:
xmlns:local="clr-namespace:ChanGrabber">
<Window.Resources>
<local:Converter x:Key="Convert"/>
</Window.Resources>
Это код, в котором я использую элемент управления:
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding ThumbImgUrl, Converter={StaticResource Convert}}" />
</StackPanel>
</DataTemplate>
, а вот код конвертера:
namespace ChanGrabber
{
class Converter
{
[valueconversion(typeof(string), typeof(bitmapimage))]
public class imageconverter : ivalueconverter
{
public object convert(object value, type targettype, object parameter, system.globalization.cultureinfo culture)
{
try
{
string mypath = (string)value;
uri myuri = new uri(mypath);
bitmapimage animage = new bitmapimage(myuri);
return animage;
}
catch (exception)
{
return new bitmapimage(new uri("ikke funket"));
}
}
public object convertback(object value, type targettype, object parameter, system.globalization.cultureinfo culture)
{
throw new notimplementedexception();
}
}
И этоэто объект, который я привязываю к изображению
class MainPosts : MainLinks
{
public MainPosts(string _title, string _link, String _postText, string _imageUrl, string _thumbUrl) :base(_title,_link)
{
PostText = _postText;
ImageUrl = _imageUrl;
ThumbImgUrl = _thumbUrl;
}
public String PostText { get; set; }
public String ImageUrl { get; set; }
public string ThumbImgUrl { get; set; }
}
Я понятия не имею, почему это не сработает, и я немного разочарован программой.Любая помощь будет так цениться