Web设计精确点滴 浅谈网页UI之Logo篇 浅谈网页UI之Banner篇 asp.net图片水印效果
2011.06 03
  FlowDocument是一个高级文档控件,可以承载丰富的流内容格式,FlowDocument顶级子元素必须派生自Block,包括:BlockUIContainer,List,Paragraph,Section,Table等内容模型,那么这样含盖的控件元素就相当丰富了,那么一个丰富的流文档中的元素很少在.cs中一个个加入,也不可能直接构建在.xaml文件中,一般的“富流”可能都是来至外部。例如:远程或本地的.xml流中,或者是把html流转换过来的xml文档等(我现在做的一个微博工具就要这样),很显然WPF直接支持将xml流转换成相应的WPF控件或内容模型,前提是将xml流的标签必须是有效的WPF控件标签,否则抛出异常,例如:要将一个xml流转换成FlowDocument控件,这个xml中的标签结构必须是上面提到5种Block内容模型。
下面通过一个例子说明:
string _text="<Image Source=\"http://www.xxx.com/xxx.png\" /><Label>my face</Label>";
string _xml = "<FlowDocument xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\" xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\">";
_xml+="<Paragraph LineHeight=\"18\">"+_text+"</Paragraph>";
_xml+="</FlowDocument>";
System.IO.StringReader reader = new System.IO.StringReader(_xml);
System.Xml.XmlReader xmlreader = System.Xml.XmlReader.Create(reader);
FlowDocument doc = (FlowDocument)XamlReader.Load(xmlreader);
分页分页:
Copyright © 2005-2012 Wenqi's blog All Rights Reserved.