Извините за мое невежество, так как я новичок.Я создаю страницу, используя xaml (так как проект xamarin формы).На этой странице у меня есть блок <Frame>
.В этом блоке кадра у меня есть Image
и Label
, как показано ниже.
<Frame BorderColor="Black" Padding="16" Margin="5">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="60" />
<RowDefinition Height="40" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="60" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<StackLayout HorizontalOptions="Start" Grid.Row="0" Grid.ColumnSpan="2">
<Label x:Name="game1Date" TextColor="Black" FontSize="14" Font="{StaticResource classicFont}"/>
</StackLayout>
<Image x:Name="flag1" HorizontalOptions="Center" VerticalOptions="Center" Grid.Row="1" Grid.Column="0"/>
<Image x:Name="flag2" HorizontalOptions="Center" VerticalOptions="Center" Grid.Row="1" Grid.Column="2"/>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center" Grid.Column="0" Grid.Row="2">
<Label x:Name="team1" HorizontalTextAlignment="Center" TextColor="{StaticResource gray}" FontSize="22"/>
</StackLayout>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center" Grid.Column="1" Grid.RowSpan="2">
<Label TextColor="{StaticResource gray}" Text="-" FontAttributes="Bold" FontSize="40"/>
</StackLayout>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center" Grid.Column="2" Grid.Row="2" >
<Label x:Name="team2" HorizontalTextAlignment="Center" TextColor="{StaticResource gray}" FontSize="22"/>
</StackLayout>
</Grid>
</Frame>
И словарь ресурсов
<ContentPage.Resources>
<ResourceDictionary>
<Color x:Key="orange">#ff8900</Color>
<Color x:Key="live">#ee4142</Color>
<Color x:Key="gray">#333000</Color>
<OnPlatform x:TypeArguments="x:String" x:Key="boldFont">
<On Platform="Android" Value="ConcourseT4-Bold.tff#Concourse T4-Bold" />
<On Platform="iOS" Value="ConcourseT4-Bold" />
</OnPlatform>
<OnPlatform x:TypeArguments="x:String" x:Key="normalFont">
<On Platform="Android" Value="ConcourseT4-Regular.tff#Concourse T4-Regular" />
<On Platform="iOS" Value="ConcourseT4-Regular" />
</OnPlatform>
<OnPlatform x:TypeArguments="x:String" x:Key="classicFont">
<On Platform="Android" Value="OpenSans.tff#Open Sans" />
<On Platform="iOS" Value="OpenSans" />
</OnPlatform>
</ResourceDictionary>
</ContentPage.Resources>
Используя свойство x:Name
, я устанавливаю Text
для метки и Source
для изображения.
game1Date.Text = "asd";
team1.Text = "asd";
team2.Text = "asd";
flag1.Source = ImageSource.FromFile("flag1.png");
flag2.Source = ImageSource.FromFile("flag2.png");
Проект собирается без каких-либо проблем, однако, когда я запускаю приложение в iOS Simulator или эмуляторе Android, происходит сбой.Исключение составляет System.InvalidCastException
.Там также нет внутреннего исключения.Если я прокомментирую блок Frame из моего файла xaml, приложение запустится без проблем.Я не понимаю, почему выдается эта ошибка и что ее вызывает.