对象元素的子元素

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

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

内容属性

元素对象有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. PMP:11.项目采购管理

    项目采购管理包括从项目团队外部采购或获取所需产品.服务或成果的各个过程.  项目采购管理包括编制和管理协议所需的管理和控制过程,例如,合同.订购单.协议备忘录 (MOA),或服务水平协议 (SLA). ...

  2. Python之旅Day9 进程&线程

    进程 线程 多进程 多线程

  3. autotrace执行计划中,统计信息详解

    全表扫描是怎么扫描的? oracle最小的存储单位是block 物理上连续的block组成了extent(也就是说一个区中的所有块在物理上是连续的) 很多个extent组成了segment(一个seg ...

  4. 使用C++版本Mxnett进行预测的注意事项

    现在越来越多的人选择Mxnet作为深度学习框架,相应的中文社区非常活跃,而且后面推出的gluon以及gluoncv非常适合上手和实验,特别是gluoncv中提供了非常多.非常新的预训练model zo ...

  5. Android WebView 加载超长 JS 数据

    在之前的文章里面,我总结过WebView如何与网页交互,也就是Java如何和JS交互 —— Android WebView 总结 —— Java和JavaScript交互. 基于这篇文章,我们基本上能 ...

  6. Javascript高级编程学习笔记(30)—— BOM(4)navigator对象

    window对象作为浏览器的全局对象.location对象保存了页面的url信息 那么navigator对象又有什么作用呢? navigator对象 该对象最早由 Netspace Navigator ...

  7. Java初学者最佳的学习方法以及会遇到的坑(内含学习资料)!

    最近系统整理了一套java初学者最佳的学习方法以及会遇到的坑等,希望对你有所帮助. 目录: 一.学习java的前提 二.学习java的方法 三.学习java时的坑 四.学习java的路线(画重点) 一 ...

  8. scws简单中文分词

    demo如下: /** * 中文分词 * @param $keyword * @param $getTop * @param $limit * @return array */ function sp ...

  9. ALL_DB_LINKS

    类型:View Owner:SYS 内容:记录了当前用户下可访问的所有的DB links 字段: OWNER : DB Link的owner DB_LINK : DB Link名称 USERNAME ...

  10. Python编程Day3—基本运算符、数据类型

    一.基本运算符 1.算数运算 print(10/3) print(10//3) print(10%3) print(10**3) 2.比较运算 print(10==10) print(10!=10) ...