Я пытаюсь добавить изображение каждый раз, когда я нажимаю кнопку добавления на StackPanel
из BindableCollection
. Я попытался использовать ItemsControl
, как показано в коде ниже:
<ItemsControl x:Name="Tickets">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding ImageTicket,diag:PresentationTraceSources.TraceLevel=High}" Stretch="None" HorizontalAlignment="Left" Width="100"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Ничего не отображается, хотя я пытался отследить вывод, но, похоже, проблемы нет.
Вот мой класс ViewModel:
class POSViewModel : Screen
{
public BindableCollection<TicketModel> Tickets { get; set; }
public POSViewModel()
{
Tickets = new BindableCollection<TicketModel>();
}
public void ManBtn()
{
TicketModel Ticket = new TicketModel
{
CategorieEnum = CategorieEnum.man,
ImageSource = "/Assets/Icons/man.png",
Prix = 10,
TicketId = 0
};
Tickets.Add(Ticket);
}
}
и вот мой класс модели:
class TicketModel
{
private int ticketId;
private CategorieEnum catégorieName;
private float prix;
private string imageSource;
private Image imageTicket;
public Image ImageTicket
{
get {
Image Img = new Image();
Img.Source = new BitmapImage(new Uri(imageSource, UriKind.Relative));
return Img;
}
set { ImageTicket = value; }
}
public int TicketId { get; set; }
public CategorieEnum CategorieEnum { get; set; }
public float Prix { get; set; }
public string ImageSource { get; set; }
}
PS: Я использую Caliburn.micro framework.
Edit1: я также попытался связать ImageSource
, но изображения не отображаются.