Partager via


Icônes TabbedPage sur Windows

Cette plateforme Windows universelle spécifique à la plateforme permet d’afficher les icônes de page dans une TabbedPage barre d’outils et offre la possibilité de spécifier éventuellement la taille de l’icône. Elle est consommée en XAML en définissant la TabbedPage.HeaderIconsEnabled propriété truejointe sur , et en définissant éventuellement la TabbedPage.HeaderIconsSize propriété jointe sur une Size valeur :

<TabbedPage ...
            xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core"
            windows:TabbedPage.HeaderIconsEnabled="true">
    <windows:TabbedPage.HeaderIconsSize>
        <Size>
            <x:Arguments>
                <x:Double>24</x:Double>
                <x:Double>24</x:Double>
            </x:Arguments>
        </Size>
    </windows:TabbedPage.HeaderIconsSize>
    <ContentPage Title="Todo" IconImageSource="todo.png">
        ...
    </ContentPage>
    <ContentPage Title="Reminders" IconImageSource="reminders.png">
        ...
    </ContentPage>
    <ContentPage Title="Contacts" IconImageSource="contacts.png">
        ...
    </ContentPage>
</TabbedPage>

Elle peut également être consommée à partir de C# à l’aide de l’API Fluent :

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...

public class WindowsTabbedPageIconsCS : Xamarin.Forms.TabbedPage
{
  public WindowsTabbedPageIconsCS()
  {
    On<Windows>().SetHeaderIconsEnabled(true);
    On<Windows>().SetHeaderIconsSize(new Size(24, 24));

    Children.Add(new ContentPage { Title = "Todo", IconImageSource = "todo.png" });
    Children.Add(new ContentPage { Title = "Reminders", IconImageSource = "reminders.png" });
    Children.Add(new ContentPage { Title = "Contacts", IconImageSource = "contacts.png" });
  }
}

La TabbedPage.On<Windows> méthode spécifie que cette plateforme spécifique ne s’exécutera que sur le plateforme Windows universelle. La TabbedPage.SetHeaderIconsEnabled méthode, dans l’espace Xamarin.Forms.PlatformConfiguration.WindowsSpecific de noms, est utilisée pour activer ou désactiver les icônes d’en-tête. La TabbedPage.SetHeaderIconsSize méthode spécifie éventuellement la taille de l’icône d’en-tête avec une Size valeur.

En outre, la TabbedPage classe de l’espace Xamarin.Forms.PlatformConfiguration.WindowsSpecific de noms a également une EnableHeaderIcons méthode qui active les icônes d’en-tête, une DisableHeaderIcons méthode qui désactive les icônes d’en-tête et une IsHeaderIconsEnabled méthode qui retourne une boolean valeur qui indique si les icônes d’en-tête sont activées.

Le résultat est que les icônes de page peuvent être affichées dans une TabbedPage barre d’outils, la taille de l’icône étant éventuellement définie sur une taille souhaitée :

Icônes TabbedPage activées propres à la plateforme