【发布时间】:2016-09-20 18:46:11
【问题描述】:
我正在开发一个 Xamarin.Forms MVVM 项目(在代码中,而不是 XAML),并且我有一个 ListView,其中每个单元格的高度不同 (HasUnevenRows = true)。在每个单元格中,我希望能够单击一个按钮并在单元格中添加或删除一些内容。我可以这样做,但单元格的高度不会根据内容调整,直到我将项目滚动到视图之外然后再回到视图中。
根据我在网上阅读的内容,不可能使单元格的高度自动调整到其内容。所以我接下来要尝试的是在运行中明确设置单元格的高度。 在我当前的设置中,我有 3 个文件:
-
MyPage.cs - 包含
var myListView = new ListView { HasUnevenRows = true, ItemTemplate = new DataTemplate(() => new MyViewCell()) -
MyViewCell.cs - 包含
myListView中使用的 ViewCell 模板,以及我想绑定到视图模型中的命令以添加内容并显式更改视图单元格高度的按钮。 - MyViewModel.cs - 包含添加/删除内容和更改视图单元格高度的命令。
问题:在 View Model (MyViewModel.cs) 中,如何访问 ListView 中的特定 ViewCell 以更改其高度?
【问题讨论】:
标签: ios listview xamarin xamarin.forms uicollectionviewcell