不接受ItemEventArgs或ItemClickEventArgs作为参数

时间:2012-07-07 21:59:02

标签: c# android monodevelop

我遵循这个简短的教程:http://docs.xamarin.com/android/tutorials/User_Interface/list_view

这个有问题的代码行

ListView.ItemClick += delegate (object sender, ItemEventArgs args) { //...

产生以下错误/警告

  

警告CS0618:'Android.Widget.ItemEventArgs'已过时:'使用   AdapterView.ItemClickEventArgs代替'(CS0618)(HelloListView)

     

错误CS1661:无法将匿名方法转换为委托类型   'System.EventHandler'   因为参数类型与委托参数类型不匹配   (CS1661)(HelloListView)

     

错误CS1678:参数2声明为类型   'Android.Widget.ItemEventArgs'但​​应该是   'Android.Widget.AdapterView.ItemClickEventArgs'(CS1678)   (HelloListView)

我的解决方案是从简短的教程中逐字逐句。如果警告/错误显示我将ItemEventArgs args更改为ItemClickEventArgs args,那么我会收到一个不同的错误,表明它是does not exist in the current context

1 个答案:

答案 0 :(得分:3)

aListView.ItemClick += (object sender, AdapterView.ItemClickEventArgs args) 
  => ItemClicked(sender, args);

public void ItemClicked(object sender, AdapterView.ItemClickEventArgs args)
{
  try
  {
    String fName = ((TextView)args.View).Text;
    // Do something with clicked item text
  }
  catch (Exception) { throw; }
}