在xamarin表单

时间:2017-02-14 12:23:11

标签: listview xamarin.forms

Hello开发人员,

我有一个ListView,你可以使用ViewCells。 作为关于如何使用应用程序的第一个教程的一部分,我需要为第一个视单元的一些元素设置动画,这样用户就可以理解单击该元素会做一些事情。

我试过MVVM:

<StackLayout x:Name="{Binding CellName}" Orientation="Horizontal" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" Margin="20">

然后

AccessPage[0].CellName = "TutorialCell";

但是

FindByName<ViewCell>("TutorialCell")

返回null。

我只能访问绑定到StackLayout的项目,而不能访问StackLayout本身,所以我可以:

element.ScaleTo(1.05, 200);

我认为这是错的吗? 谢谢。

2 个答案:

答案 0 :(得分:1)

这对你有用吗?创建一个继承自ListView的新类并覆盖SetupContent方法:

public class MyListView : ListView
{
    public Cell FirstRow { get; set; }
    protected override void SetupContent(Cell content, int index)
    {
        if (index == 0) FirstRow = content;
        base.SetupContent(content, index);
    }
}

然后您可以访问自定义ListView的FirstRow属性。

答案 1 :(得分:0)

您还可以投射:

ITemplatedItemsView<Cell> templatedItemsView = listView as ITemplatedItemsView<Cell>;
ViewCell firstCell = templatedItemsView.TemplatedItems[0] as ViewCell;