This issue was first reported by @timahrentlov in Issue #8609
I just provide the Minimal repo to reproduce the bug here, and a suggestion on where I think the bug ln the Xamarin Code is.
Display Groupheaders using the DataTemplate provided by the DataTemplateSelector
Android: As expected.
iOS: Crash with "System.InvalidOperationException: LoadTemplate should not be null"
https://github.com/MariovanZeist/Xamarin.CollectionViewGrouping
Or use zip file:
Xamarin.CollectionViewGrouping.zip
The problem is in the Xamarin.Forms.Platform.iOS.GroupableItemsViewController class
specifically in the UpdateTemplatedSupplementaryView function.
This function gets the group header or footer DataTemplate, and then calls a cell.Bind override that does not check if the DataTemplate is actually a DataTemplateSelector (code is around line 105)
hence the crash.
Confirmed that this is happening. Thank you for the thorough investigation @MariovanZeist! Was really easy to find where this was because of that. Did you use SourceLink?
I tried to fix it real quick, but I think there is some other issues whenever we implement this.

It seems that it is not taken into account that a footer was not set, and thus it will just take the default footer (label with ToString on the object) and put that under the group. It seems we need to implement some logic to see if the user actually wants to see a footer or not.
My progress so far is in the fix-8647 branch if anyone else is going to pick this up later.
@jfversluis Ah yes forgot to add that issue with the footer. I encountered it as well, but disregard it as I had to develop a quick workaround for this issue anyway. (Workaround is simply to use DataTemplate's instead of DataTemplateSelector)
No I didn't use Sourcelink, I actually have the Xamarin Repo downloaded and analyzed the code.
But it's great that you mention SourceLink as it seems just what I need to debug Xamarin and other NetCore issues. (not necessarily problems in Net Core or Xamarin, but having the source codes available makes it much more easy to debug my own code )
Could you maybe reach out to gerald.[email protected] to not clutter this issue with off-topic stuff. I'm interested in your experience with pulling down the code and poking around in it 馃槃 Thanks!
@jfversluis We also have encountered this issue and used the workaround above, but would be great to see this resolved.
Closing, Fixed in 4.4.0
Most helpful comment
Could you maybe reach out to gerald.[email protected] to not clutter this issue with off-topic stuff. I'm interested in your experience with pulling down the code and poking around in it 馃槃 Thanks!