Я пытаюсь сделать некоторые массовые изменения во многих файлах XAML, и я хочу сделать это, добавив их с помощью XDocument linq. Это работает нормально, и я могу добавлять новые элементы, однако у меня есть проблемы с отступом:
документ загружен с "PreserveWhitseSpace", потому что мне нужно сохранить форматирование (из-за SVN):
_xamlDocument = XDocument.Load (новый StringReader (newContent), LoadOptions.PreserveWhitespace);
, затем я добавляю несколько элементов, и когда я это сделаю, сохраняю файл, используя:
_xamlDocument.Save (stringWriter, SaveOptions.None);
недавно добавленные элементы не имеют правильного отступа, что выглядит не очень красиво (извините за форматирование, но вы увидите строки / n):
<?xml version=\"1.0\" encoding=\"utf-16\"?>\r\n<UserControl x:Class=\"Sonova.Chinook.UserInterface.Common.SimpleProgressView\" xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\" xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\" Content=\"{Binding}\">\r\n <UserControl.Resources>\r\n \r\n <ResourceDictionary><ResourceDictionary.MergedDictionaries><ResourceDictionary Source=\"{ThemeDictionary AssemblyName=Cocoon.UserInterface}\" /><ResourceDictionary Source=\"/Cocoon.UserInterface;component/VisualResources/Controls/ContentControl.xaml\" /></ResourceDictionary.MergedDictionaries></ResourceDictionary></UserControl.Resources>\r\n <UserControl.Style>\r\n <StaticResource ResourceKey=\"SimpleProgressStyle\" />\r\n </UserControl.Style>\r\n</UserControl>
в приведенном выше XML-коде показано, что для следующего элемента нет разрывов строк или пробелов, например, для следующего элемента:
<ResourceDictionary Source=\"{ThemeDictionary AssemblyName=Cocoon.UserInterface}\" /><ResourceDictionary
Я уже пытался установить отключение форматирования в качестве параметра сохранения, но ни один из них не привел кон желал результата.
Есть идеи?С наилучшими пожеланиями