UIViewController CreateViewController(int index)
{
Xamarin.Forms.View formsView = null;
object bindingContext = null;
if (Element.ItemsSource != null)
{
bindingContext = Element.ItemsSource.Cast <object> ().ElementAt(index);
}
var selector = Element.ItemTemplate as DataTemplateSelector;
if (selector != null)
{
formsView = (Xamarin.Forms.View)selector.SelectTemplate(bindingContext, Element).CreateContent();
}
else
{
formsView = (Xamarin.Forms.View)Element.ItemTemplate.CreateContent();
}
formsView.BindingContext = bindingContext;
// UIScreen.MainScreen.Bounds.Width, UIScreen.MainScreen.Bounds.Height
var rect = new CGRect(Element.X, Element.Y, ElementWidth, ElementHeight);
var nativeConverted = FormsViewToNativeiOS.ConvertFormsToNative(formsView, rect);
var viewController = new ViewContainer();
viewController.Tag = index;
viewController.View = nativeConverted;
return(viewController);
}