#xamarin.forms
Вопрос:
У меня есть Классная модель:
- Класс Продуктаинфо
public class ProductInfo { public int ID { get; set; } public int IDProduct { get; set; } public List<ProductImages> ProductImages { get; set; } }
- Производительность класса
public class ProductImages { public int ID { get; set; } public int ProductID { get; set; } public string Images { get; set; } public Boolean ImgFlag { get; set; } }
У меня есть данные
Вот как я получаю информацию о продукте
async Task ExecuteLoadProductCommand()
{
IsBusy = true;
try
{
ProductInfos.Clear();
var prodList = await productRepository.GetProductsAsync();
foreach (var prod in prodList)
{
//Get Imgaes by condition
//prod.Images = ProductImages()
ProductInfos.Add(prod);
}
}
catch (Exception)
{
throw;
}
finally
{
IsBusy = false;
}
}
Первое:
Как я могу связать изображения с условием ImgFlag = true в продукте ContentPage.axml
Второе: У меня есть страница содержимого, которая показывает ProductDetails.axml. Я показываю следующую информацию: «Название»: Название продукта,… —> Это прекрасно. Однако у меня есть дополнительный обзор карусели. Я хочу показать список изображений с условием, что ProductID = ID(ProductInfo)
Вот как я передаю данные ProductDetail
public DashboardsViewModel()
{
LoadProductCommand = new Command(async () => await ExecuteLoadProductCommand());
ProductInfos = new ObservableCollection<ProductInfo>();
ProductTappedView = new Command<ProductInfo>(OnViewDetailProduct);
}
private async void OnViewDetailProduct(ProductInfo prod)
{
await Navigation.PushAsync(new DetailProduct(prod));
}
Спасибо!
Комментарии:
1. 1. не добавляйте продукты без изображений
ProductInfos
. 2. просто установитеItemsSource
карусель вProductImages
свойство выбранногоProductInfo
2. Спасибо. Я решил проблему 2. Однако проблема 1: Я не хочу удалять продукт без изображения. Но я хочу получить изображение ImgFlag = true. У вас есть какое-нибудь другое решение?
3. вы могли бы использовать возможность отфильтровывать элементы без изображений при назначении источника элементов, но фактически это будут два разных списка данных
4. Спасибо, я найду другое решение