Partilhar via


Ícones de página com guias no Windows

Essa plataforma específica da Plataforma Universal do Windows permite que os ícones de página sejam exibidos em uma TabbedPage barra de ferramentas e fornece a capacidade de especificar opcionalmente o tamanho do ícone. Ele é consumido em XAML definindo a propriedade anexada TabbedPage.HeaderIconsEnabled como truee, opcionalmente, definindo a propriedade anexada TabbedPage.HeaderIconsSize como um Size valor:

<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>

Como alternativa, ele pode ser consumido do C# usando a API fluente:

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" });
  }
}

O TabbedPage.On<Windows> método especifica que esse específico da plataforma só será executado na Plataforma Universal do Windows. O TabbedPage.SetHeaderIconsEnabled método, no Xamarin.Forms.PlatformConfiguration.WindowsSpecific namespace, é usado para ativar ou desativar os ícones de cabeçalho. Opcionalmente, o TabbedPage.SetHeaderIconsSize método especifica o tamanho do ícone de cabeçalho com um Size valor.

Além disso, a TabbedPage classe no namespace também tem um EnableHeaderIcons método que habilita ícones de cabeçalho, um DisableHeaderIcons método que desabilita ícones de cabeçalho e um IsHeaderIconsEnabled método que retorna um boolean valor que indica se os Xamarin.Forms.PlatformConfiguration.WindowsSpecific ícones de cabeçalho estão habilitados.

O resultado é que os ícones de página podem ser exibidos em uma barra de TabbedPage ferramentas, com o tamanho do ícone sendo opcionalmente definido para um tamanho desejado:

Ícones TabbedPage habilitados específicos da plataforma