WPF XamlObjectWriterException:无法创建未知类型"Grid"
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"的更多相关文章
- WPF 中动态创建和删除控件
原文:WPF 中动态创建和删除控件 动态创建控件 1.容器控件.RegisterName("Name",要注册的控件) //注册控件 2.容器控件.FindName(" ...
- WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法。
原文:WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/articl ...
- java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量
package com.swift.kuozhan; import java.io.File; import java.io.FileFilter; /*使用文件过滤器筛选将指定文件夹下的小于200K ...
- 创建 MIME 类型////////////zzz
用 Apache 创建 MIME 类型 在 Apache 里, MIME 类型和文件扩展名之间的映射是被存放在配置文件 "apache根目录/conf/mime.types" 里的 ...
- 基于Andoird 4.2.2的Account Manager源代码分析学习:创建选定类型的系统帐号
AccountManager.addAccount() public AccountManagerFuture<Bundle> addAccount(final String accoun ...
- MSIL实用指南-创建枚举类型
创建枚举类型比较简单,主要使用moduleBuilder.DefineEnum 和enumBuilder.DefineLiteral. 第一步:创建 EnumBuilder 创建 EnumBuilde ...
- 根据dateFormatter创建NSDate类型数据
根据dateFormatter 2000-01-01 创建NSDate类型数据 NSDateFormatter *dateFormatter = [NSDate shareDateFormatter] ...
- WebApi接口访问异常问题。尝试创建“testController”类型的控制器时出错。请确保控制器具有无参数公共构造函数
本来运行的好好的webAPI 接口突然报了个 :“尝试创建“testController”类型的控制器时出错.请确保控制器具有无参数公共构造函数” 错误.耗了半宿最终解决了, 原因: api控制器中引 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(十九):MessageHandler 的未知类型消息处理
这是<微信开发深度解析:微信公众号.小程序高效开发秘籍>出版之后写的第一篇微信相关的文章.从这一篇开始,将介绍第一版出版之后添加或修改的功能,或者对书上内容需要做的补充. MP v14.8 ...
随机推荐
- 测试工具-PICT-微软基于数据项多个取值的正交法用例生成工具
下载 http://download.microsoft.com/download/f/5/5/f55484df-8494-48fa-8dbd-8c6f76cc014b/pict33.msi 这里使用 ...
- Putty使用密钥登陆SSH
平时工作学习必须要使用Windows,在SSH远程连接软件里Putty算是用得比较顺手的,而且很小巧. 但是每次输入密码很麻烦,还容易输错,OpenSSH可以利用密钥来自动登陆,如此一来方便了不少.配 ...
- 好记性不如烂笔头-linux学习笔记6keepalived实现主备操作
Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工 ...
- maven常用命令集合
作者:ydlmlh 原文:http://ydlmlh.iteye.com/blog/2158973 抽了点时间,整理了一些maven常用命令参数,以便参考:参考了maven官网和网上其他一些maven ...
- 3 MySQL数据库--初识sql语句
1.初识sql语句 服务端软件 mysqld SQL语句:后面的分号mysql -uroot -p123 操作文件夹(库) 增 create database db1 charset utf8; 查 ...
- c# 之 new 关键字
1.实例化变量 DataTable dt = new DataTable(); 2.调用构造函数 class CoOrds { public int x, y; // 实例构造函数(默认构造函数) ...
- js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别
__proto__: 这个属性是实例对象的属性,每个实例对象都有一个__proto__属性,这个属性指向实例化该实例的构造函数的原型对象(prototype). proterty:这个方法是对象的属性 ...
- java用while循环设计轮询线程的性能问题
java用while循环设计轮询线程的性能问题 轮询线程在开发过程中的应用是比较广泛的,在这我模拟一个场景,有一个队列和轮询线程,主线程往队列中入队消息,轮询线程循环从队列中读取消息并打印消息内容.有 ...
- MVC页面和表单
@Styles.Render("~/Content/css")//在head中引用css @Scripts.Render("~/bundles/modernizr&quo ...
- 自动创建orcl表
using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text; ...