C# MAUI 显示List<ImageSource> XAML的完整代码
时间: 2024-11-15 14:28:02 浏览: 3
在C# MAUI中,如果你想在XAML中显示一个包含`List<ImageSource>`数据的列表,首先你需要在ViewModel中创建并填充这个列表。然后在对应的View的XAML中绑定列表内容。这里是一个简单的例子:
**ViewModel (ViewModel.cs)**
```csharp
using System.Collections.Generic;
using MauiApp1.Models; // 假设有一个ImageModel类在这里
public class MyViewModel : ObservableObject
{
private List<ImageSource> _imageSources;
public List<ImageSource> ImageSources
{
get => _imageSources;
set => Set(ref _imageSources, value);
}
public MyViewModel()
{
// 初始化你的ImageSource列表
ImageSources = new List<ImageSource>
{
ImageSource.FromFile("path_to_image1.jpg"),
ImageSource.FromUri(new Uri("http://example.com/image2.png")),
};
}
}
```
**View (YourPage.xaml.cs)**
```xml
<!-- YourPage.xaml -->
<?xml version="1.0" encoding="utf-8"?>
ContentView xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MauiApp1.YourPage">
<ContentPage.Content>
<ListView x:Name="imageViewList" ItemsSource="{Binding ImageSources}">
<ListView.ItemTemplate>
<DataTemplate>
<StackLayout Orientation="Horizontal">
<Image Aspect="Fill" Source="{Binding}" />
</StackLayout>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentPage.Content>
</ContentView>
```
在这个例子中,我们在`ListView`的`ItemsSource`上绑定了`MyViewModel`的`ImageSources`属性,`Image`控件的`Source`绑定了当前`ImageSource`实例。
阅读全文