Я новичок в Xamarin. Я хочу узнать о теге <Style>. У меня проблема. Когда я начинаю добавлять тег в файл App.xaml, появляется предупреждающее сообщение. Я не знаю, какую ошибку совершаю. Надеюсь, вы, ребята, поможете мне решить эту проблему. Заранее спасибо.
Сообщение об ошибке
App.xaml
<?xml version = "1.0" encoding = "utf-8" ?>
<Application xmlns = "http://xamarin.com/schemas/2014/forms"
xmlns:x = "http://schemas.microsoft.com/winfx/2009/xaml"
x:Class = "TravelRecordApp.App">
<Application.Resources>
<!-- Application resource dictionary -->
<ResourceDictionary>
<Color x:Key = "blueColor">#1E90FF</Color>
<Color x:Key = "whiteColor">#FFFFFF</Color>
<Style>
<Setter Property = "BackgroundColor" Value = "{StaticResource blueColor}" />
<Setter Property = "TextColor" Value = "{StaticResource whiteColor}"/>
</Style>
</ResourceDictionary>
</Application.Resources>
</Application>





Тег Style всегда должен указывать TargetType. Поэтому, если, например, ваш стиль нацелен на ярлыки, вам придется изменить свой код на:
<Style TargetType = "Label">
<Setter Property = "BackgroundColor" Value = "{StaticResource blueColor}" />
<Setter Property = "TextColor" Value = "{StaticResource whiteColor}"/>
</Style>
Между прочим, средство предварительного просмотра Xamarin.Forms - заноза в **. Сообщение об ошибке, которое вы получаете, вероятно, не исчезнет даже после того, как вы его исправите. Мне пришлось полностью очистить и перестроить, затем открыть средство предварительного просмотра для другой страницы, закрыть его и снова открыть для страницы, которую я хотел, прежде чем он что-либо отобразит.
Возможно, вам лучше не использовать его.
Другая проблема может заключаться в том, что у вас есть код в App.xaml.cs в конструкторе App (), который также может вызывать проблему. Например, я исправил проблему в некотором унаследованном мной коде, который пытался подключиться к базе данных, поэтому я исправил ее следующим образом:
public App()
{
InitializeComponent();
if (DesignMode.IsDesignModeEnabled)
{
return;
}
// connect to database code here
Вы можете использовать DesignMode.IsDesignModeEnabled, чтобы определить, работаете ли вы в конструкторе или где-то еще. Вы также можете проверить свои конструкторы в файлах xaml.cs и посмотреть, не пытаются ли они запустить какой-либо код, который заставил бы дизайнер также выбросить это исключение.
Если у кого-то все еще есть проблема с этим, то для меня это исправлено в моем диспетчере пакетов NuGet и обновлении Xamarin Forms до последней версии.
Мгновенно исправил проблему для меня.
Удачи!
Работает и для других страниц.