Set Sliding Panel Content in .NET MAUI Navigation Drawer
21 May 20258 minutes to read
The drawer pane content is only viewable when the drawer is in the open state. Content can be set as:
-
Header Content
-
Drawer Content
-
Footer Content
NOTE
Header and Footer content is optional, but the Drawer content is mandatory to allocate space for the drawer.
Header content
The header is displayed at the top of the drawer. Use the DrawerHeaderView property to set the header content:
<navigationdrawer:SfNavigationDrawer x:Name="navigationDrawer">
<navigationdrawer:SfNavigationDrawer.DrawerSettings>
<navigationdrawer:DrawerSettings>
<navigationdrawer:DrawerSettings.DrawerHeaderView>
<Grid BackgroundColor="#6750A4">
<VerticalStackLayout VerticalOptions="Center"
HorizontalOptions="Center">
<Label Text="Header View"/>
</VerticalStackLayout>
</Grid>
</navigationdrawer:DrawerSettings.DrawerHeaderView>
</navigationdrawer:DrawerSettings>
</navigationdrawer:SfNavigationDrawer.DrawerSettings>
</navigationdrawer:SfNavigationDrawer>SfNavigationDrawer navigationDrawer = new SfNavigationDrawer();
DrawerSettings drawerSettings = new DrawerSettings()
{
DrawerWidth = 250,
};
navigationDrawer.DrawerSettings = drawerSettings;
this.Content = navigationDrawer;
Header height
Adjust the height of the drawer header content using the DrawerHeaderHeight property.
NOTE
The DrawerHeaderView can be removed by setting the DrawerHeaderHeight to zero.
<navigationdrawer:SfNavigationDrawer x:Name="navigationDrawer">
<navigationdrawer:SfNavigationDrawer.DrawerSettings>
<navigationdrawer:DrawerSettings DrawerHeaderHeight="150">
<navigationdrawer:DrawerSettings.DrawerHeaderView>
<Grid BackgroundColor="#6750A4">
<VerticalStackLayout VerticalOptions="Center"
HorizontalOptions="Center">
<Label Text="Header View"/>
</VerticalStackLayout>
</Grid>
</navigationdrawer:DrawerSettings.DrawerHeaderView>
</navigationdrawer:DrawerSettings>
</navigationdrawer:SfNavigationDrawer.DrawerSettings>
</navigationdrawer:SfNavigationDrawer>SfNavigationDrawer navigationDrawer = new SfNavigationDrawer();
DrawerSettings drawerSettings = new DrawerSettings()
{
DrawerHeaderHeight = 150,
DrawerWidth = 250,
};
navigationDrawer.DrawerSettings = drawerSettings;
this.Content = navigationDrawer;
Footer content
The footer is displayed at the bottom of the drawer. Use the DrawerFooterView property to set the footer content:
<navigationdrawer:SfNavigationDrawer x:Name="navigationDrawer">
<navigationdrawer:SfNavigationDrawer.DrawerSettings>
<navigationdrawer:DrawerSettings>
<navigationdrawer:DrawerSettings.DrawerFooterView>
<Grid BackgroundColor="#6750A4">
<VerticalStackLayout VerticalOptions="Center"
HorizontalOptions="Center">
<Label Text="Footer View"/>
</VerticalStackLayout>
</Grid>
</navigationdrawer:DrawerSettings.DrawerFooterView>
</navigationdrawer:DrawerSettings>
</navigationdrawer:SfNavigationDrawer.DrawerSettings>
</navigationdrawer:SfNavigationDrawer>SfNavigationDrawer navigationDrawer = new SfNavigationDrawer();
DrawerSettings drawerSettings = new DrawerSettings()
{
DrawerWidth = 250,
};
navigationDrawer.DrawerSettings = drawerSettings;
this.Content = navigationDrawer;
Footer height
Adjust the height of the drawer footer content using the DrawerFooterHeight property.
NOTE
The DrawerFooterView can be removed by setting the DrawerFooterHeight to zero.
<navigationdrawer:SfNavigationDrawer x:Name="navigationDrawer">
<navigationdrawer:SfNavigationDrawer.DrawerSettings>
<navigationdrawer:DrawerSettings DrawerFooterHeight="150">
<navigationdrawer:DrawerSettings.DrawerFooterView>
<Grid BackgroundColor="#6750A4">
<VerticalStackLayout VerticalOptions="Center"
HorizontalOptions="Center">
<Label Text="Footer View"/>
</VerticalStackLayout>
</Grid>
</navigationdrawer:DrawerSettings.DrawerFooterView>
</navigationdrawer:DrawerSettings>
</navigationdrawer:SfNavigationDrawer.DrawerSettings>
</navigationdrawer:SfNavigationDrawer>SfNavigationDrawer navigationDrawer = new SfNavigationDrawer();
DrawerSettings drawerSettings = new DrawerSettings()
{
DrawerFooterHeight = 150,
DrawerWidth = 250,
};
navigationDrawer.DrawerSettings = drawerSettings;
this.Content = navigationDrawer;
Drawer content
The main content of the drawer is displayed between the header and footer content. It can be set using the DrawerContentView property. The content view occupies the space left by the header and footer content.
<navigationdrawer:SfNavigationDrawer x:Name="navigationDrawer">
<navigationdrawer:SfNavigationDrawer.DrawerSettings>
<navigationdrawer:DrawerSettings>
<navigationdrawer:DrawerSettings.DrawerContentView>
<Grid BackgroundColor="#6750A4">
<VerticalStackLayout VerticalOptions="Center"
HorizontalOptions="Center">
<Label Text="Drawer Content"/>
</VerticalStackLayout>
</Grid>
</navigationdrawer:DrawerSettings.DrawerContentView>
</navigationdrawer:DrawerSettings>
</navigationdrawer:SfNavigationDrawer.DrawerSettings>
</navigationdrawer:SfNavigationDrawer>SfNavigationDrawer navigationDrawer = new SfNavigationDrawer();
DrawerSettings drawerSettings = new DrawerSettings()
{
DrawerWidth = 250,
};
navigationDrawer.DrawerSettings = drawerSettings;
this.Content = navigationDrawer;