Как в Avalonia UI установить FontSize специально только для Android версии приложения?
Я пишу кроссплатформенное приложение на Avalonia UI Community Toolkit. и получилось так что один из моих TextBlock'ов не помещается на экран при запуске на телефоне. как установить FontSize для этого TextBlock был специально для андроид версии. например для Desktop версии этот 24, а для Android это 20
я пытался использовать ChatGPT, но мне не помог его способ вот он
axaml разметка
<Border Grid.Row="0" Background="#2576f7" Height="28" MaxHeight="28">
<Grid>
<Button Background="Transparent" HorizontalAlignment="Left" Content="Back" FontFamily="Arial" FontSize="16" FontWeight="Bold" Command="{Binding NavigateToSelectItemMorphologyTestPageCommand}">
<Button.Styles>
<Style Selector="Button:pointerover /template/ ContentPresenter">
<Setter Property="Background" Value="Transparent"/>
</Style>
</Button.Styles>
</Button>
<TextBlock x:Name="HeaderText" Text="long text that doesn't fit on the page " FontFamily="Arial" FontSize="24" FontWeight="Bold" TextAlignment="Center"/>
</Grid>
</Border>
и вот как раз размер текста равный 24 не вмещается на страницу на экране телофана а экране компьютера все нормально.
вот что мне посоветовал ChatGPT.
...ViewModel
[ObservableProperty]
private bool isAndroid;
public ...ViewModel ()
{
IsAndroid= RuntimeInformation.IsOSPlatform(OSPlatform.Create("ANDROID"));
}
а разметку изменить
<UserControl.Resources>
<Style x:Key="HeaderTextStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Arial" />
<Setter Property="FontSize" Value="24" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsAndroid}" Value="True">
<Setter Property="FontSize" Value="20" />
</DataTrigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
<Grid Background="#ffdadada">
<ScrollViewer VerticalScrollBarVisibility="Visible">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Border Grid.Row="0" Background="#2576f7" Height="28" MaxHeight="28">
<Grid>
<Button Background="Transparent" HorizontalAlignment="Left" Content="Back" FontFamily="Arial" FontSize="16" FontWeight="Bold" Command="{Binding NavigateToSelectItemTestRussianPageCommand}">
<Button.Styles>
<Style Selector="Button:pointerover /template/ ContentPresenter">
<Setter Property="Background" Value="Transparent"/>
</Style>
</Button.Styles>
</Button>
<TextBlock Text="long text that doesn't fit on the page" FontWeight="Bold" TextAlignment="Center" Style="{StaticResource HeaderTextStyle}"/>
</Grid>
</Border>
но повылезала куча ошибок 1. Error (active) AXN0002 XamlX.XamlParseException: Unable to resolve type DataTrigger from namespace https://github.com/avaloniaui Line 14, position 6. 2. Error (active) CS0103 The name 'InitializeComponent' does not exist in the current context
но исправить я их так и не смог и способа как это сделать по другому тоже не нашел