У меня есть ResourceDictionary
, который содержит строки:
<ResourceDictionary xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<sys:String x:Key="Foo">Hello world</sys:String>
...
</ResourceDictionary>
Этот словарь является частью темы, а в некоторых темах некоторые из строк пусты:
<sys:String x:Key="Foo"></sys:String>
Проблема в том, что в этом случае я получаю a XamlParseException
:
Невозможно создать объект типа "System.String". Ошибка CreateInstance, что может быть вызвано отсутствием конструктора по умолчанию для 'System.String'
Я знаю, что можно объявить пустую строку в ресурсе массива, используя <x:Static Member="sys:String.Empty" />
, но мне не нужен массив... Используя x:Static
непосредственно, поскольку ресурс возвращает расширение разметки, а не строку, Помещение x:Static
в элемент sys:String
дает ту же ошибку, что и раньше.
Можно ли даже объявить пустую строку как ресурс XAML? Как?