Есть ли способ игнорировать ошибки Visual Studio, возникающие в XAML?
-
19-09-2019 - |
Вопрос
Я знаю, что вы можете сделать это в CodeBehind с помощью чего-то вроде этого...
#pragma warning disable 67
...
#pragma warning restore 67
Но есть ли способ сделать это в XAML?
Например, в моем App.xaml есть следующее...
<FontFamily x:Key="ExtendedFontFamily">Verdana</FontFamily>
И он продолжает выдавать мне эти ошибки VS (хотя он успешно собирается)...
Ошибка 1 Тип «Fontfamily» не используется в качестве элемента объекта, поскольку он не является общедоступным или не определяет публичный конструктор без параметра или преобразователь типа.C:\Users\jed.hunsaker\Documents\Work extGen\src\ESO.App.Reporting\ESO.App.Reporting.UI.Silverlight\App.xaml 8 4 ESO.App.Reporting.UI.Silverlight
и...
Ошибка 2 Тип «Fontfamily» не поддерживает прямое содержание.C:\Users\jed.hunsaker\Documents\Work extGen\src\ESO.App.Reporting\ESO.App.Reporting.UI.Silverlight\App.xaml 8 42 ESO.App.Reporting.UI.Silverlight
Если вы, ребята, не знаете лучший способ сохранить FontFamily в вашем App.xaml, я внимательно слушаю!
Решение
Вам следует использовать словарь ресурсов.Вот пример:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<FontFamily x:Key="ExtendedFontFamily">Verdana</FontFamily>
</ResourceDictionary>
И вы должны сослаться на свой App.xaml следующим образом (при условии, что они находятся в папке «Ресурсы»):
<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="SilverlightApplication3.App"
>
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/Fonts.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>