Articles in this section
Category / Section

How to resolve SfExpander not rendering issue in iOS and UWP?

1 min read

Xamarin does not load the renderer assemblies, by default, in iOS and UWP projects. Hence, to solve this, you need to manually load it by calling the Init method of SfExpanderRenderer class in the respective projects as mentioned below.

iOS Project

Call the SfExpanderRenderer.Init() in the FinishedLaunching overridden method of the AppDelegate class after the Xamarin.Forms Framework initialization, and before the LoadApplication is called as demonstrated in the following code example:

public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
    …
    global::Xamarin.Forms.Forms.Init();
    Syncfusion.XForms.iOS.Expander.SfExpanderRenderer.Init();
    LoadApplication(new App());
    …
}

 

ReleaseMode Issue in UWP Platform

The known Framework issue in UWP platform is the custom controls will not render when deployed the application in Release Mode.

The above problem can be resolved by initializing the ExpanderRenderer assemblies in App.xaml.cs in UWP project as in the following code snippet:

// In App.xaml.cs
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
    …
    rootFrame.NavigationFailed += OnNavigationFailed;
    // you'll need to add ‘using System.Reflection;’
    List<Assembly> assembliesToInclude = new List<Assembly>();
    //Now, add all the assemblies your app uses
    assembliesToInclude.Add(typeof(Syncfusion.XForms.iOS.Expander.SfExpanderRenderer).GetTypeInfo().Assembly);
    // replaces Xamarin.Forms.Forms.Init(e);        
    Xamarin.Forms.Forms.Init(e, assembliesToInclude);
    …     
}

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments
Please  to leave a comment
Access denied
Access denied