using (FileStream fs = new FileStream("UnitFile/Report2.xaml", FileMode.Open))
{
rootElement = (FrameworkElement)XamlReader.Load(fs);
}

在用XamlReader.Load时,报错。

Report2.xaml文件的内容如下:

<Grid >
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="25" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Border Style="{DynamicResource BorderEditStyle}">
<WrapPanel Style="{StaticResource WrapPanelEditStyle}">
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="名称"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="型号"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="制单人"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="制单日期"/>
<DatePicker Style="{StaticResource DateEditStyle}"/>
</StackPanel> <StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="计划数量"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="合格数量"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="报废数量"/>
<TextBox Style="{StaticResource TextEditStyle}"/>
</StackPanel>
<StackPanel Style="{StaticResource StackPanelEditStyle}">
<Label Style="{StaticResource LableEditStyle}" Content="返修数量111"/>
<DatePicker Style="{StaticResource DateEditStyle}"/>
</StackPanel>
</WrapPanel>
</Border>
<Button Height="25" Width="50" Grid.Row="1" Content="test" Command="{Binding AddCommand}"/>
<DataGrid Grid.Row="2" ItemsSource="{Binding list}" AutoGenerateColumns="False"
> <DataGrid.Columns>
<DataGridCheckBoxColumn Header="选择"
Binding="{Binding FIsChecked}"/>
<DataGridTextColumn Header="名称" Binding="{Binding FName}"/> <DataGridTextColumn Header="出生年月" Binding="{Binding FBirth}"/>
<DataGridTextColumn Header="家庭住址" Binding="{Binding FAddress}"/>
</DataGrid.Columns>
</DataGrid>
</Grid>

查了下资料说需要添加一些引用。

我也不知道需要添加哪几个引用。于是我就用如下代码将上面的界面导出来

using (FileStream fs = new FileStream(
System.IO.Path.Combine(Environment.CurrentDirectory, "saved.xaml"),
FileMode.Create, FileAccess.Write))
{
XamlWriter.Save(mainCanvas, fs);//mainCanvas为你的grid的Name
fs.Close();
}

导出的结果如下

于是我就将这几个引用添加到Report2.xaml中。再通过XamlReader.Load()方法就可以成功加载了。

WPF XamlObjectWriterException:无法创建未知类型"Grid"的更多相关文章

  1. WPF 中动态创建和删除控件

    原文:WPF 中动态创建和删除控件 动态创建控件 1.容器控件.RegisterName("Name",要注册的控件)   //注册控件 2.容器控件.FindName(" ...

  2. WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法。

    原文:WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/articl ...

  3. java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量

    package com.swift.kuozhan; import java.io.File; import java.io.FileFilter; /*使用文件过滤器筛选将指定文件夹下的小于200K ...

  4. 创建 MIME 类型////////////zzz

    用 Apache 创建 MIME 类型 在 Apache 里, MIME 类型和文件扩展名之间的映射是被存放在配置文件 "apache根目录/conf/mime.types" 里的 ...

  5. 基于Andoird 4.2.2的Account Manager源代码分析学习:创建选定类型的系统帐号

    AccountManager.addAccount() public AccountManagerFuture<Bundle> addAccount(final String accoun ...

  6. MSIL实用指南-创建枚举类型

    创建枚举类型比较简单,主要使用moduleBuilder.DefineEnum 和enumBuilder.DefineLiteral. 第一步:创建 EnumBuilder 创建 EnumBuilde ...

  7. 根据dateFormatter创建NSDate类型数据

    根据dateFormatter 2000-01-01 创建NSDate类型数据 NSDateFormatter *dateFormatter = [NSDate shareDateFormatter] ...

  8. WebApi接口访问异常问题。尝试创建“testController”类型的控制器时出错。请确保控制器具有无参数公共构造函数

    本来运行的好好的webAPI 接口突然报了个 :“尝试创建“testController”类型的控制器时出错.请确保控制器具有无参数公共构造函数” 错误.耗了半宿最终解决了, 原因: api控制器中引 ...

  9. Senparc.Weixin.MP SDK 微信公众平台开发教程(十九):MessageHandler 的未知类型消息处理

    这是<微信开发深度解析:微信公众号.小程序高效开发秘籍>出版之后写的第一篇微信相关的文章.从这一篇开始,将介绍第一版出版之后添加或修改的功能,或者对书上内容需要做的补充. MP v14.8 ...

随机推荐

  1. 关于TP5中的依赖注入和容器和facade

    看了不少的文章,也看了官方的介绍,还是根据自己的理解,写写看法,理清下思路 只是单纯的说依赖注入Dependency Injection和容器 别的不白扯 比如有A,B,C三个类 A类的1方法依赖B类 ...

  2. forbidden Derby database starting with weblogic instance

    Now doing a new project  which  choose the newest weblogic 12.1.2.0.0 as web container.But found the ...

  3. Git--时光穿梭机之删除文件06

    在Git中,删除也是一个修改操作,我们实际操作一下吧,先添加一个文件test.txt到Git并且提交 $ git add test.txt $ git commit -m "add test ...

  4. c#正则获取html里面a标签href的值

    获取单个a中href的值: string str = "<a href=\"http://www.itsve.com\">下载</a>" ...

  5. netbeans php环境搭建

    jdk必须: sudo apt-get install openjdk-7-jdk

  6. 如何使用find命令在Linux中查找文件

    Linux Find命令是Linux系统管理员工具库中最强大的工具之一. Find是一个命令行实用程序,它允许您根据用户给定的表达式搜索目录层次结构中的文件和目录,并对每个匹配的文件应用用户指定的操作 ...

  7. FP昨天的新单,今天交期回写到2020年

    昨天新单6900000053,回写交期到2020年.在此视图查看此单回写的日期V_OUT_SHIPMENT_PLAN_TESTS,可看到日期是2020年. 1.检查OUT_SHIPMENT_PLAN表 ...

  8. 服务级别协议(SLA)与运行水平协议(OLA)

    服务级别协议(SLA)与运行水平协议(OLA): 服务级别管理和服务级别协议在国内已被广泛接受并成用.本文试图讨论服务级别协议(SLA)和运行水平协议(OLA)的异同. 1. SLA a.定义 服务级 ...

  9. 并发包下常见的同步工具类详解(CountDownLatch,CyclicBarrier,Semaphore)

    目录 1. 前言 2. 闭锁CountDownLatch 2.1 CountDownLatch功能简介 2.2 使用CountDownLatch 2.3 CountDownLatch原理浅析 3.循环 ...

  10. linux shell脚本编程笔记(三): 三种引号的区别

    双引号.单引号.反引号的区别 测试用例: OPDATE=`date -d '-1 day' +%Y%m%d` ) do FILEDATE=`date -d "-$i day" +% ...