2016-04-03 39 views
0

我在Xamarin Studio中有一個故事板,其中包含一個UITableViewController。我遵循這些示例創建了一個從UITableViewSource繼承的數據源。數據源分配在ViewDidLoad中。Xamarin UITableViewController RowSelected未開火

UITableViewController中,我設置了數據源(不是委託)。數據列表出現,但是當我單擊(在模擬器中)一行時,RowSelected事件處理程序不會觸發。

我試圖鉤住事件處理自己在ViewDidLoad

this.RowSelected += TableView_RowSelected(this.TableView, this.TableView.IndexPathForSelectedRow); 

這將導致一個編譯錯誤說,你不能分配給RowSelected,因爲它是一個方法組。

我注意到本網站上的其他人通過從事件處理程序中刪除base.RowSelected (tableView, indexPath);解決了同樣的問題,但這對我無效。

+0

你能顯示一些代碼嗎? –

回答

0

RowSelected是一種方法,而不是一個屬性,這就是爲什麼你不能分配它。

如果要使用RowSelected,請覆蓋TableViewControllerTableViewSource中的方法。

public override void RowSelected(UITableView tableView, NSIndexPath indexPath) 
{ 
    base.RowSelected(tableView, indexPath); 
}