Я пишу приложение с использованием Xamarin.Forms и хочу отображать значки на странице с вкладками для приложения UWP. Для этого я пытаюсь использовать собственный рендерер. Код пользовательских рендереров
class TabbedPageWithIconsRenderer : TabbedPageRenderer
{
protected override void OnElementChanged(VisualElementChangedEventArgs e)
{
base.OnElementChanged(e);
if (e.NewElement != null && Control != null)
{
Control.HeaderTemplate = App.Current.Resources["TabHeaderTemplate"] as DataTemplate;
}
}
}
И стиль шаблона данных:
<forms:ImageConverter x:Key="imageConverter" />
<DataTemplate x:Key="TabHeaderTemplate">
<StackPanel >
<Image
HorizontalAlignment="Center"
Margin="0,12,0,0"
Height="24"
Width="24"
Source="{Binding Icon, Converter={StaticResource imageConverter}}" />
<TextBlock
FontFamily="Segoe UI"
Text="{Binding Title}"
Style="{StaticResource CaptionTextBlockStyle}"
LineStackingStrategy="BlockLineHeight"
LineHeight="14"
MaxLines="2"
IsTextScaleFactorEnabled="False"
TextAlignment="Center"
HorizontalAlignment="Center"
Margin="2,5,2,7" />
</StackPanel>
</DataTemplate>
Проблема в том, что заголовок работает нормально, но значки никогда не появляются, однако они правильно назначаются каждой странице в Forms.Xaml.
Что я делаю неправильно?