Assumptions:
TableView - reference to the TableView
DataSource - is a class which inherits UITableViewSource
DataSource.Objects - is a public List< object >(), accessible to the UIViewController
private UIRefreshControl refreshControl;
public override void ViewDidLoad()
{
base.ViewDidLoad();
// Set the DataSource for the TableView
TableView.Source = dataSource = new DataSource(this);
// Create the UIRefreshControl
refreshControl = new UIRefreshControl();
// Handle the pullDownToRefresh event
refreshControl.ValueChanged += refreshTable;
// Add the UIRefreshControl to the TableView
TableView.AddSubview(refreshControl);
}
private void refreshTable(object sender, EventArgs e)
{
fetchData();
refreshControl.EndRefreshing();
TableView.ReloadData();
}
private void fetchData()
{
var objects = new List<object>();
// fetch data and store in objects.
dataSource.Objects = objects;
}