В WPF: ключевые проблемы пространства при использовании Пользовательское расширение разметки в VS2010
Мы разработали решение для локализации с использованием пользовательского расширения разметки в VS 2008.
В то время мы использовали его следующим образом:
<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default Name} />
(Обратите внимание на пробел в DefaultText). (Обратите внимание также, как инструмент text-color StackOverflow также изменяет цвет слов).
Но он прекрасно работает и компилируется без проблем.В VS 2010, однако, всякий раз, когда вы пытаетесь ввести пробел, используя этот способ реализации расширения разметки, IDE всегда добавляет запятую для вас, что дает:
<TextBlock Text={utilsWpf:Intl Key=ObjectName.PropertyName, DefaultText=Default, Name} />
Конечно, он больше не компилируется...
Одним из решений является реализация этого расширения разметки другим способом:
<TextBlock>
<TextBlock.Text>
<utilsWpf:Intl Key="ObjectName.PropertyName", DefaultText="Default Name"/>
</TextBlock.Text>
</TextBlock>
Но он добавляет много строк, и у нас нет только одного текстового блока, как вы можете себе представить...
Другое решение - не вводить пространство, а скопировать другое пространство и вставить его (которое все еще компилируется в VS 2010, но довольно грубо).
На мой взгляд, наше решение-не самая лучшая практика.Какие лучшие практика вы бы посоветовали, чтобы иметь возможность вводить пробелы без неудобств?
Спасибо за вашу проницательность.