Я установил шаблон для элемента ListView
и назначить пункты списка,Как получить текущий элемент в ItemTemplate в Xamarin Forms
listView.ItemTemplate = new DataTemplate(typeof(CustomVeggieCell));
listView.ItemsSource = posts;
Как получить currentItem
элемент в CustomVeggieCell
:
CustomVeggieCell.class:
public class CustomVeggieCell : ViewCell
{
public CustomVeggieCell(){
// for example int count = currentItem.Images.Count;
var postImage = new Image
{
Aspect = Aspect.AspectFill,
HorizontalOptions = LayoutOptions.FillAndExpand,
VerticalOptions = LayoutOptions.FillAndExpand
};
postImage.SetBinding(Image.SourceProperty, new Binding("Images[0]"));
var postImage = new Image
{
Aspect = Aspect.AspectFill,
HorizontalOptions = LayoutOptions.FillAndExpand,
VerticalOptions = LayoutOptions.FillAndExpand
};
postImage.SetBinding(Image.SourceProperty, new Binding("Images[1]"));
}
}
Я хочу получить сумму Images
в ItemTemplate
. Images
- это просто список строк.
p.s. Все значение в ItemTemplate
Я получаю привязку.
Благодарим за ответ. Но BindingContext всегда имеет значение null, когда я пытался получить var allModel = BindingContext как WallPostViewModel; или var images = (IList) BindingContext; В любом случае значение и BindingContext имеют значение null ... –
@IgorLevkivskiy 'CustomVeggieCell.BindingContext' останется' null', пока 'ListView' не заполнит' CustomVeggieCell', и данные будут показаны на экране. Попытайтесь объяснить, что вы пытаетесь сделать с помощью CustomVeggieCell.BindingContext, и, возможно, мы сможем вам помочь. – hvaughan3
Я хочу получать изображения из currentItem, потому что у каждого сообщения есть разные количества фотографий, поэтому я хочу отображать разные количества фотографий для currentItem, используя разные макеты. –