【问题标题】:How to get access viewcell by index from ListView object in xamarin forms?如何从 xamarin 表单中的 ListView 对象通过索引访问 viewcell?
【发布时间】:2018-10-09 10:44:14
【问题描述】:

我想通过索引在 xamarin 表单中获取列表视图的 Viewcell(视图),我尝试了很多如下代码

var myViewCellList = mListView.ItemTemplate.values; 
//this return Dictionary with 0 elements

它可能看起来像 var view = mListView.ItemTamplate[index];

【问题讨论】:

  • 您想要访问 ViewCell 或绑定到 List 的对象?

标签: c# xamarin xamarin.forms


【解决方案1】:

我找到了通过传递项目索引来获取视单元的解决方法,这不是更好的方法,但如果我们没有任何替代方法,这可行。

MyListView.NotifyRowTapped(selectedTimeCardIndex);

 private void ViewCellTapped(object sender, EventArgs args)
 {
   if(sender is ViewCell viewCell)
   {
     //viewCell for the selected index
   } 
 }

【讨论】:

    【解决方案2】:

    我刚刚在使用ITemplatedItemsView界面时通过自定义ListView自己解决了这个问题

    更多讨论请访问Here

        public class CustomViewCell: ListView
       {
    
           public ITemplatedItemsList<Cell> TemplatedItem
           {
               get { return ((ITemplatedItemsView<Cell>)this).TemplatedItems; }
           }        
       }
    

    实施:

    var viewcell = (CustomViewCell.TemplatedItem[0] as viewcell);
    

    【讨论】:

    • 我对这个答案投了反对票,因为这可能对您有用,但这不是您通常访问查看项目的方式。没有更好地了解您要做什么。这让人们对如何访问视图产生了错误的想法。
    • @Neil 在批评之前回答是你的责任,如果你已经知道这不是更好的方法
    猜你喜欢
    • 1970-01-01
    • 2020-11-22
    • 2023-03-14
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 2019-05-04
    • 1970-01-01
    • 2017-04-15
    相关资源
    最近更新 更多