如果WPF的FlowDocument以.xaml文件形式存在,那么如何把这个文件Load进FlowDocumentReader里显示?

解决方案 »

  1.   

    想把xaml像xml一样读进去,看看他们的代码清单,样子很像,但是最重要的第一行的声明不一样吧,这个声明决定了你程序的实现,不过倒是可以已文本的形式读出来,也不过是打印了个清单。
    不知道你要做什么,如果真的要读的话,改个扩展名,然后以文本的形式读文件,把第一行的声明改成<?xml version="1.0" encoding="utf-8" ?>,倒是可以按xml读出来,可是它本来就是个界面设计又不是数据,用DocumentReader读出来像个目录树一样的东西有什么用呢?就像用文本编辑器来显示图片一样,肯定不如用photoshop打开好看吧。
    估计你是想玩玩而已吧。
      

  2.   

    using System.Windows.Markup;
    using System.IO;...FileStream fs = new FileStream("FlowDocument.xaml", FileMode.Open, FileAccess.Read);
    FlowDocument doc = XamlReader.Load(fs) as FlowDocument;
    flowDocReader.Document = doc;
    fs.Close();这段代码可以读取flow document文件并显示到FlowDocumentReader控件里。有没比较成熟些的FlowDocument编辑器呢?OpenXML功能似乎弱了些。
      

  3.   

    xaml.cs页:private void NewCreatWebSiteEveryOneTreeViewItem_Selected(object sender, RoutedEventArgs e)
            {
                //(sender as FlowDocumentReader).Document = XamlReader.Load(new FileStream("cccc.xaml", FileMode.Open)) as FlowDocument;
            }
    你给FlowDocumentReader定义一个事件!让flowdocument初始化的时候就显示在FlowDocumentReader里.
    XAML页:<FlowDocumentReader Grid.Column="2" x:Name="FDReader1" TextElement.Foreground="#647474" Loaded="FlowDocumentReader_Loaded"/>但是你要这样写的话必须把你写好的那个flowdocument放在...\bin\Debug的目录里就可以了