对象元素的子元素

有三类子元素:内容属性、集合项、值(类型转换)

-----------------------------------------------------------------------------

内容属性

元素对象有Content或Items属性的,这就是内容属性,可以包含元素对象或文本。

集合项

两种类型的集合:List、Dictionary

类型转换

普通文本作为元素的子元素。

---------------------------------------------------------------------------

xaml元素必须有默认构造函数

-------------------------------------------------------------------------------------------------

运行时加载和解析XAML

使用代码解析加载XAML文件

XamlReader对象

如果项目根目录有个Win.xaml的文件,用代码解析载入并显示。

Window win = null;

using(FileStream fs = new FileStream ("Win.xaml", FileMode.Open, FileAccess.Read))

{

  win = (Window)XamlRead.Load(fs);

  win.show();

}

注意事项:FileStream的命名空间System.IO;XamlRead的命名空间System.Windows.Markup;

使用文件流,需要读取物理文件,所以Win.xaml需要调整设置,复制到输出目录:始终复制;生成操作:无。

这些设置在页面的属性设置中。同时要删除页面的后置代码文件。Win.xaml要删除xmlans=class""的设置。+

win.xaml的xmal代码

<Window>

  <StackPanel>

    <Button>

      ......

    <Button>

    .......

......

</Window>

如何找到第二个按钮并给按钮设置文本

win = (Window)XamlRead.Load(fs);

StackPanel sp = (StackPanel)win.Content;

Button btn = sp.Children[1];

btn.Content="找到";

这是根据子集的个数顺序硬编码找对象,有更简单的方法吗?有

----------------------------------------------------------------------------------------

Xaml元素命名

<Window>

  <StackPanel>

    <Button>

      ......

    <Button X:Name="btn1">

    .......

......

</Window>

win = (Window)XamlRead.Load(fs);

Button btn = (Button)win.FindName("btn1");

btn.Content="找到";

wpf学习20180606的更多相关文章

  1. WPF学习开发客户端软件-任务助手(下 2015年2月4日代码更新)

    时光如梭,距离第一次写的 WPF学习开发客户端软件-任务助手(已上传源码)  已有三个多月,期间我断断续续地对该项目做了优化.完善等等工作,现在重新向大家介绍一下,希望各位可以使用,本软件以实用性为主 ...

  2. WPF学习05:2D绘图 使用Transform进行控件变形

    在WPF学习04:2D绘图 使用Shape绘基本图形中,我们了解了如何绘制基本的图形. 这一次,我们进一步,研究如何将图形变形. 例子 一个三角形,经Transform形成组合图形: XAML代码: ...

  3. WPF学习之资源-Resources

    WPF学习之资源-Resources WPF通过资源来保存一些可以被重复利用的样式,对象定义以及一些传统的资源如二进制数据,图片等等,而在其支持上也更能体现出这些资源定义的优越性.比如通过Resour ...

  4. WPF学习之路初识

    WPF学习之路初识   WPF 介绍 .NET Framework 4 .NET Framework 3.5 .NET Framework 3.0 Windows Presentation Found ...

  5. WPF学习拾遗(二)TextBlock换行

    原文:WPF学习拾遗(二)TextBlock换行 下午在帮组里的同事解决一个小问题,为了以后方便,把就把它收集一下吧. 新建一个TextBlock作为最基础的一个控件,他所携带的功能相对于其他的控件要 ...

  6. WPF学习(8)数据绑定

    说到数据绑定,其实这并不是一个新的玩意儿.了解asp.net的朋友都知道,在asp.net中已经用到了这个概念,例如Repeater等的数据绑定.那么,在WPF中的数据绑定相比较传统的asp.net中 ...

  7. WPF学习:3.Border & Brush

    上一章<WPF学习:2.Layout-Panels-Countainers>主要介绍了布局,容器和面板.这一章主要开始介绍Border(边界)和Brush(画刷). 代码地址:http:/ ...

  8. wpf学习

    http://www.jikexueyuan.com/course/1231_3.html?ss=1 WPF入门教程系列二——Application介绍 http://www.cnblogs.com/ ...

  9. WPF学习笔记-用Expression Design制作矢量图然后导出为XAML

    WPF学习笔记-用Expression Design制作矢量图然后导出为XAML 第一次用Windows live writer写东西,感觉不错,哈哈~~ 1.在白纸上完全凭感觉,想象来画图难度很大, ...

随机推荐

  1. jQuery-弹幕

    该方法可能有bug,毕竟简单粗暴 <!DOCTYPE html><html> <head> <meta charset="UTF-8"&g ...

  2. 架构(三)MongoDB安装配置以及集群搭建

    一 安装 1.1 下载MongoDB 我个人不太喜欢用wget url, 之前出现过wget下载的包有问题的情况 https://fastdl.mongodb.org/linux/mongodb-li ...

  3. Linux tgtadm: Setup iSCSI Target ( SAN )

    Linux target framework (tgt) aims to simplify various SCSI target driver (iSCSI, Fibre Channel, SRP, ...

  4. [转] An Introduction to Mutual SSL Authentication

    1. Introduction Mutual SSL authentication or certificate based mutual authentication refers to two p ...

  5. Vipe框架构思记

    准备着手写一个JAVA框架,基于公司目前的框架提取出来.当然公司现在的框架也是我搭建的.在这整理一下思路. 框架名称:Vipe AOP,IOC容器:Spring MVC:Spring MVC ORM: ...

  6. python 按照一个字典的值来对这个字典进行排序

    old_dic = {'a':6, 'b':3, 'c':2, 'd':4, 'e':5, 'f':1}new_dic = sorted(old_dic.items(), key=lambda d:d ...

  7. java中调用三方接口post传参时map和jsonobject的区别转换

    post方法名及参数为:(具体方法可参考https://www.cnblogs.com/mufengforward/p/10510337.html) public static String doPo ...

  8. io模块及其API

    模块: io io.StringIO io.BytesIO 所包含API列表: io.StringIO.write: 写入字符 io.StringIO.getvalue: 获取写入的字符 io.Str ...

  9. [原创]K8Cscan插件之Weblogic漏洞扫描&通用GetShell Exploit

    [原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...

  10. 浅谈模块系统与 ABP 框架初始化

    在 ABP 框架当中所有库以及项目都是以模块的形式存在,所有模块都是继承自AbpModule 这个抽象基类,每个模块都拥有四个生命周期.分别是: PreInitialze(); Initialize( ...