Dynamically show/hide Header or Footer of Xamarin.Forms.ListView

You should be able to hide the footer and not have it consume any space. I believe you'll need to set the HeightRequest for the label in the FooterTemplate. You can do that by doing something like:

<Label Text="No Elements found." IsVisible="{Binding FooterIsVisible}">
    <Label.Triggers>
        <Trigger TargetType="Label" Property="IsVisible" Value="False">
            <Setter Property="HeightRequest" Value="0" />
        </Trigger>
    </Label.Triggers>
</Label>