xamarin.forms - 如何通过Button获取ListView的行项?
问题描述
要获得它的选定项目ListView
很容易通过:
myObject myObjectName = e.Item as myObject ;
那是ItemTappedEventArgs
有Item
属性的。
但是,如果我想在单元格内放置一个按钮并且我想获取在EventArgs
没有Item
属性的情况下单击其按钮的单元格的项目,如何获得?
解决方案
尝试这样的事情,将您的项目列表绑定到列表视图的 Itemsource,如果您有一个按钮或图像具有如下所示的点击事件映射,您可以从列表中获取所选项目。当事件映射到图像的点击手势时,代码将转换为图像。
列表视图中的图像将是,
<Image Source="app_dots" Grid.Column="2" VerticalOptions="Start">
<Image.GestureRecognizers>
<TapGestureRecognizer
Tapped="more_Tapped"
NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
以及 Tap 事件的代码,
async void more_Tapped(object sender, System.EventArgs e)
{
ApplicationModel applicationModel = ((ApplicationModel)((Image)sender).BindingContext);
if (applicationModel != null)
{
//do your logic;
}
}
推荐阅读
- python - python:如何添加一个搜索路径
- python - 如何使用 Django 中的列表创建正确的 get 查询集以获取值
- javascript - 如何使用 For 循环动态更改 Vue Js 中的变量?
- discord - 分片状态命令 - Discord.JS V12
- python-3.x - 如何使用 pip 将 python 包下载到具有公共访问权限的 Google Cloud Storage 存储桶中并从那里安装
- python - 根据此数据框中其他列中的特定值更改熊猫数据框中的一列中的值(使用应用),并带有掩码
- sonatype - 如何更改 Nexus 3 存储库基本 URL?
- flutter - 为什么从不显示的不同文件导入小部件时?
- php - 为什么主机密钥验证失败?使用 Easy-Deploy-Bundle 部署 Symfony 和 BitBucket
- javascript - 获取 span 元素的值