Faites glisser le bord intérieur du panneau pour le redimensionner, ou faites la mise au point et utilisez les touches fléchées. Double-cliquez sur le bord, ou appuyez sur Entrée pour revenir à la largeur par défaut.
A glisse depuis le bord de la page au-dessus de son contenu, pour des détails ou un formulaire qui appartient à côté de la page plutôt qu’à sa place. L’utilisateur peut le redimensionner avec une poignée glisser sur son bord intérieur, tout en redimensionnant la navigation, et double-cliquer sur le manche pour le réinitialiser. Il s’attache par défaut à droite, à la fin de la page ; réglez Position (position) sur Start (start) pour l’amarrer à gauche. Les boutons de grille SidePanel ouvrent leur formulaire d’enregistrement en un lorsqu’ils sont un panneau latéral.
<Button onClick={() => setOpen(true)}>Détails</Button>
<SidePanel
open={open}
onOpenChange={setOpen}
title="Détails"
widthStorageKey="my-app.details-panel.width"
>
...
</SidePanel><FluentButton OnClick="@(() => _open = true)">Détails</FluentButton>
<SidePanel @bind-Open="_open"
Title="Détails"
WidthStorageKey="my-app.details-panel.width">
...
</SidePanel>Le redimensionnement est activé par défaut ; réglez EnableResizing (enableResizing dans React ) sur false pour une largeur fixe. DefaultWidth, MinWidth et MaxWidth définissez la largeur de départ et jusqu’où l’utilisateur peut la porter, et le panneau n’est jamais plus large que la fenêtre de vue. Donnez WidthStorageKey une clé propre au panneau et il se rouvre à la largeur laissée par l’utilisateur, à travers les chargements de page. Sur un téléphone, le panneau prend toute la largeur et n’a pas de poignée.
{/* Ça commence à 560px, redimensionable entre 400px et 900px, et mémorisé */}
<SidePanel
open={open}
onOpenChange={setOpen}
defaultWidth={560}
minWidth={400}
maxWidth={900}
widthStorageKey="my-app.editor-panel.width"
>
...
</SidePanel>
{/* Une largeur fixe, sans poignée */}
<SidePanel open={open} onOpenChange={setOpen} enableResizing={false}>
...
</SidePanel><!-- Ça commence à 560px, redimensionable entre 400px et 900px, et mémorisé -->
<SidePanel @bind-Open="_open"
DefaultWidth="560"
MinWidth="400"
MaxWidth="900"
WidthStorageKey="my-app.editor-panel.width">
...
</SidePanel>
<!-- Une largeur fixe, sans poignée -->
<SidePanel @bind-Open="_open" EnableResizing="false">
...
</SidePanel>Title et FooterContent (title et footer dans React) couvrent la plupart des cases. Lorsque le pied de page dépend de l’état à l’intérieur du contenu — un bouton Enregistrer activé uniquement une fois qu’un formulaire a changé — composez le panneau à la place : TitleTemplate et FooterContent dans Blazor, et dans React SidePanelHeader, SidePanelBody et SidePanelFooter, qui peuvent s’installer dans un fournisseur de contexte qui vous appartient.
<SidePanel open={open} onOpenChange={setOpen}>
<RecordContext table="contact" id={id}>
<SidePanelHeader>Détails</SidePanelHeader>
<SidePanelBody>...</SidePanelBody>
<SidePanelFooter>
<SaveButton /> {/* il lit le contexte du dossier pour savoir s’il y a quelque chose à sauver */}
</SidePanelFooter>
</RecordContext>
</SidePanel><SidePanel @bind-Open="_open">
<TitleTemplate>Détails</TitleTemplate>
<ChildContent>...</ChildContent>
<FooterContent>
<FluentButton OnClick="@SaveAsync" Disabled="@(!_isDirty)">Sauvegarder</FluentButton>
</FooterContent>
</SidePanel>Ouvrez la case de chaque côté et faites glisser son bord intérieur pour la redimensionner, ou faites la mise au point sur le bord et utilisez les touches fléchées ; double-cliquez dessus, ou appuyez sur Entrée pour la réinitialiser. Elle se souvient de sa largeur, donc fermez-la, rechargez la page et rouvrez-la.
Faites glisser le bord intérieur du panneau pour le redimensionner, ou faites la mise au point et utilisez les touches fléchées. Double-cliquez sur le bord, ou appuyez sur Entrée pour revenir à la largeur par défaut.
Nom | Type | Par défaut | Description |
|---|---|---|---|
ChildContent | RenderFragment? | Le contenu du panel. | |
DefaultWidth | int | 400 | Largeur en px avant que l’utilisateur ne redimensionne, et au double-clic réinitialise. Par défaut est à 400. |
EnableResizing | bool | True | Quand true (par défaut), une poignée de glissage sur le bord du panneau face à la page permet à l’utilisateur de la redimensionner. Double-cliquez sur la poignée pour la réinitialiser à SidePanel.DefaultWidth. Il n’y a pas de poignée sur un téléphone, où le panneau occupe toute la largeur. |
FooterContent | RenderFragment? | Le pied de page du panneau, généralement ses boutons d’action. | |
MaxWidth | int | 1200 | Le plus large que l’utilisateur peut rendre le panneau, en px. Par défaut est de 1200 ; jamais plus large que la fenêtre de vue. |
MinWidth | int | 320 | Le panneau le plus étroit que l’utilisateur peut faire, en px. Par défaut, c’est 320. |
Modal | bool | True | Si le panneau est modal. Par défaut, il est true. |
Open | bool | False | Si le panneau est ouvert. Bindable bidirectionnel. |
Position | SidePanelPosition | End | À quel bord de la page le panneau se connecte. Par défaut, le SidePanelPosition.Endpanneau est . |
PreventDismissOnEscape | bool | False | Ignorer si appuyer sur Échap au lieu de fermer le panneau ? |
ShowDismiss | bool | True | S’il faut afficher un bouton de renvoi (X) dans la barre de titre. Par défaut sur true. |
Title | string? | Titre en clair. Ignoré quand SidePanel.TitleTemplate il est défini. | |
TitleTemplate | RenderFragment? | Contenu du titre. | |
WidthStorageKey | string? | La clé localStorage : le panneau se souvient de sa largeur en dessous, donc il se rouvre à la taille de l’utilisateur laisse tomber. Laisse non réglé pour démarrer à SidePanel.DefaultWidth chaque fois. Donne chaque type de Affiche sa propre touche pour que chacun se souvienne de sa propre largeur. |
ChildContentDefaultWidthEnableResizingtrue (par défaut), une poignée de glissage sur le bord du panneau face à la page permet à l’utilisateur de la redimensionner. Double-cliquez sur la poignée pour la réinitialiser à SidePanel.DefaultWidth. Il n’y a pas de poignée sur un téléphone, où le panneau occupe toute la largeur.FooterContentMaxWidthMinWidthModaltrue.OpenPositionSidePanelPosition.Endpanneau est .PreventDismissOnEscapeShowDismisstrue.TitleSidePanel.TitleTemplate il est défini.TitleTemplateWidthStorageKeySidePanel.DefaultWidth chaque fois. Donne chaque type de Affiche sa propre touche pour que chacun se souvienne de sa propre largeur.Nom | Type | Description |
|---|---|---|
OnDismiss | EventCallback | Affiché lorsque l’utilisateur ferme le panneau (Échap ou bouton de renvoyement), pas lorsque SidePanel.Open est fixé par le parent. |
OpenChanged | EventCallback<bool> | Élevé lorsque false l’utilisateur ferme le panneau. |
OnDismissSidePanel.Open est fixé par le parent.OpenChangedfalse l’utilisateur ferme le panneau.