NHX123
NHX123

Reputation: 1

How to embed image in a ListView in code behind?

I have a ListView created in XAML and bound to a list in C# code behind.

I am trying to insert an embedded image into the ListView from C# but not sure how I'm failing here.

The image property is set as an EmbeddedResource

Here is my XAML

 <ListView x:Name="listView" HasUnevenRows="True">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <ViewCell>
                        <StackLayout Orientation="Horizontal" Padding="5">
                            <Image Source="{Binding ImageUrl}"/>
                            <StackLayout HorizontalOptions="StartAndExpand">
                                <Label Text="{Binding Name}"/>
                                <Label Text="{Binding Status}" TextColor="Gray"/>
                            </StackLayout>
                            <Button Text="Follow"/>
                        </StackLayout>
                    </ViewCell>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>

Here is my C# code behind

public ListPage()
        {
            InitializeComponent();

            Image embeddedImage = new Image
            {
                Source = ImageSource.FromResource("App2.Images.image.jpg")
            };

            listView.ItemsSource = new List<Contact>
            {
                new Contact {Name = "Name", Status = "Hi!", ImageUrl = new Image{ Source = ImageSource.FromResource("App2.Images.cat.jpg")} },
                new Contact {Name = "John", Status = "Bye!" },
                new Contact {Name = "Jennifer"}
            };
        }

Here is my Contact model

public class Contact
    {
        public string Name { get; set; }
        public string Status { get; set; }
        public Image ImageUrl { get; set; }
    }

Upvotes: 0

Views: 201

Answers (0)

Related Questions