我想對大量XAML文件做一些批量更改,並通過使用linq的XDocument進行連接來完成此操作。此工作正常,我可以添加新元素,但是我遇到問題壓痕:與XDocument縮進
文件裝載 「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
我已經嘗試設置disableformating爲保存選項,但似乎沒有導致期望的結果。
任何想法? 最好的問候
我發現這個額外的信息,但我正在尋找一種方法來保留空白,並很好地格式化新元素http://bytes.com/topic/net/answers/178641-xmltextwriter-formatting-preservewhitespace – ccg 2012-03-13 15:49:29