当前位置: 首页 > news >正文 js网站开发高端玩家 news 2025/11/4 4:31:53 js网站开发,高端玩家,Wordpress企业电商主题排行,如今做哪个网站致富一、XAML的含义 问#xff1a;XAML的含义是什么#xff1f;为什么WPF中会使用XAML#xff1f;而不是别的#xff1f; 答#xff1a;在XAML是基于XML的格式#xff0c;XML的优点在于设计目标是具有逻辑性易读而且简单内容也没有被压缩。 其中需要提一下XAML文件在 Visu…一、XAML的含义 问XAML的含义是什么为什么WPF中会使用XAML而不是别的 答在XAML是基于XML的格式XML的优点在于设计目标是具有逻辑性易读而且简单内容也没有被压缩。 其中需要提一下XAML文件在 Visual Studio (VS) 编译时是会被转换为BAML。BAML最终会以资源的形式嵌入到DLL或者EXE程序集中。由于BAML是标记化的所以在程序运行时能够被更快的解析。 二、 XAML文档中的含义 我们新建一个WPF应用程序。创建的过程就跳过了如果不知道可以查一下在我们新建的WPF程序中如下图的红框内容是我们需要介绍的内容。 放大的效果我们一行一行的解释 示例解释 首先我们可以关注到两个元素Window和Grid元素被修饰起来的其实都是创建了一个类型的实例。例如Grid就是创建了一个Grid对象。其中还需要注意其中Window我们称呼其为“顶级元素”因为在XAML中必须且只能有一个顶级元素。顶级元素在WPF中只有三种类型其他两种是 Page和Application TitleMainWindow Height450 Width800 示例解释 我们关注到上面的如TitleMainWindow 其中这里就是给当前Window 元素对象属性进行了对Title属性赋值其中赋值是通过attribute特性来实现的。attribute特性可以为每一个类的属性进行赋值。有些情况属性值比较复杂就采用属性元素语法后面介绍。 运行效果是Title 设置当前窗体的标题Width Height是设置当前窗体的宽和高的 Window x:ClassWpfApp2.MainWindow 示例解释 这里是指示XAML文件对应的C#类。换句话说就是创建了一个名为MainWindow的新类改类继承Window xmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentation 示例解释 这个在WPF当中是指定名称空间的意思其中以xmlns开头是因为它是xml中的一个特殊特性。它专门用来声明名称空间。所以我们在声明名称空间的时候通常都是以xmlns开头。 当前这个名称空间是指向WPF所有的类。 当前的名称空间是没有前缀的所以它是整个文档的默认名称空间我们在使用当前名称空间里面的WPF的所有类我们就不需要以前缀开头来去声明。 xmlns:xhttp://schemas.microsoft.com/winfx/2006/xaml 示例解释改名称空间的前缀为X所以在使用当前名称空间的内容前面需要以X:开头。 举个例子 x:Array TypeListListListItemParagraphFontFamily1FontSize15FontStyleNormalFontWeightBold5/Paragraph/ListItem/List/x:Array 三、代码隐藏类 在我们创建wpf的时候我们前面提到了有一行Window x:ClassWpfApp2.MainWindow。是Windows X 前缀开头的一个Class来修饰了一个MainWindow类当前类继承自Windows 。其实这个时候我们的编译器就自动为我们生成了当前类的代码。 代码如下所示 namespace WpfApp2 {/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow : Window{public MainWindow(){InitializeComponent();}} } 我们介绍一下InitializeComponent方法。当前方法就是 调用System.Windows.Application类的LoadComponent方法LoadComponent方法是从程序集中提取BAML并用它来构建用户界面解析BAML时它会创建每个控件的对象设置其属性并关联所有事件处理程序。所以他在我们wpf当中是很重要的一个方法所以我们永远都不要删除它就算我们新建了一个构造函数我们也应该在新建的构造方法当中调用当前方法 四、简单属性和类型转换器 简单属性简单属性就是我们前面提到的直接进行对属性进行赋值如 Width800 但我们这里属性赋值的过程中其实编译器会执行类型转换的操作。主要是为了关联非字符串和字符串属性。将转换后的值赋值给我们的属性。首先属性赋值的的过程中都会去查找TypeConverter特性如果提供了TypeConverter特性该特性将指定哪个类可执行转换。 如Background 属性指定了BrushConverter类型转换器怎么找到的呢 提示类型转换器指定了什么类型的值可以转换为当前属性的值 。 五、复杂属性 问什么是复杂属性 答实际上就是当前属性包含了完备的对象当前的对象具有自己的一系列属性。也可以通过类型转换器来实现但有时可能这种实现方式更加复杂。 举个例子 Window.BackgroundSolidColorBrush ColorRed / /Window.Background 注意Window.Background标签 我们称呼为WIndow的子标签。 举个例子 Window.BackgroundLinearGradientBrushGradientStop ColorRed Offset0 /GradientStop ColorBlack Offset1 //LinearGradientBrush/Window.Background 示例解释 当前我们创建了LinearGradientBrush对象然后创建了GradientStop 对象来填充GradientStopCollection集合LinearGradientBrush 的类型 提示所有的xaml我们都说是创建了某某对象然后给某某对象添加了什么样的内容那么反过来其实我们用xaml写的所有的代码我们都可以用代码来实现 。这里就不做示范了。 六、标记扩展 问什么是标记扩展 答他可以帮我们完成某些情景如可将属性值设置为一个已经存在的对象、或者希望通过将一个属性绑定到另一个控件来动态的设置属性值。这两种情况我们都需要使用标记扩展。其中我会举例第一种的写法。 举个例子 Window.BackgroundLinearGradientBrushLinearGradientBrush.GradientStopsGradientStop Offset0.5 Color{x:Static local:MainWindow.color} /GradientStop Offset0.5 ColorBlack //LinearGradientBrush.GradientStops/LinearGradientBrush/Window.Background using System.Windows; using System.Windows.Media;namespace WpfApp2 {/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow : Window{public MainWindow(){InitializeComponent();}public static Color color { get; set; } Colors.Red;} } 示例解释 当前代码将Color属性设置为一个已经存在的对象。 七、嵌套元素 XAML每个元素决定如何处理嵌套的元素。这种交互会使用下面三种机制中的一种进行中转。 1 如果父元素实现了Ilist接口解析器将调用list点Add的方法,并且为该方法传入子元素作为参数 2 如果父元素实现了IDictionary接口那么将调用IDictionary。Add的方法并且为该方法传递子元素作为参数。当使用字典集合时还必须设置X:Key特性以便为每个条目指定键名。 3 父元素使用ContentProperty特性进行修饰解析器将使用子元素设置对应的属性 举个例子 Window.BackgroundLinearGradientBrushLinearGradientBrush.GradientStopsGradientStop Offset0.5 Color{x:Static local:MainWindow.color} /GradientStop Offset0.5 ColorBlack //LinearGradientBrush.GradientStops/LinearGradientBrush/Window.Background 示例解释 当前属性GradientStops 是GradientStopCollection类型实现了IList接口所以编译器会调用list接口点Add的方法将元素作为参数添加 举个例子 GridButton/Button/ /Grid 示例解释 当前Grid既没有实现IDictionary接口也没有实现Ilist接口但他实现了ContentProperty特性所以编译器会执行 。可以反编译看到那么实际程序就会调用Grid的Children属性的Add方法将嵌套的元素添加进去。; 提示所以继承ContentControl控件都只能包含单一的嵌套元素。继承ItemsControl类的控件都可以包含多个条目集合。 举个例子: ListBoxListBoxItem /ListBoxItem /ListBoxItem /ListBoxItem /ListBoxItem /StackPanel /Button / /ListBoxButtonStackPanel / /Button ListBox继承ItemsControl而Button继承ContentControl。 文章转载自: http://www.morning.spfq.cn.gov.cn.spfq.cn http://www.morning.qsfys.cn.gov.cn.qsfys.cn http://www.morning.psxcr.cn.gov.cn.psxcr.cn http://www.morning.rpkl.cn.gov.cn.rpkl.cn http://www.morning.gdgylp.com.gov.cn.gdgylp.com http://www.morning.ryxdr.cn.gov.cn.ryxdr.cn http://www.morning.pmjw.cn.gov.cn.pmjw.cn http://www.morning.addai.cn.gov.cn.addai.cn http://www.morning.hbnwr.cn.gov.cn.hbnwr.cn http://www.morning.bpmft.cn.gov.cn.bpmft.cn http://www.morning.gfrtg.com.gov.cn.gfrtg.com http://www.morning.zmnyj.cn.gov.cn.zmnyj.cn http://www.morning.lgtzd.cn.gov.cn.lgtzd.cn http://www.morning.pgkpt.cn.gov.cn.pgkpt.cn http://www.morning.nfbnl.cn.gov.cn.nfbnl.cn http://www.morning.pghry.cn.gov.cn.pghry.cn http://www.morning.ymwnc.cn.gov.cn.ymwnc.cn http://www.morning.mrckk.cn.gov.cn.mrckk.cn http://www.morning.vibwp.cn.gov.cn.vibwp.cn http://www.morning.mtdfn.cn.gov.cn.mtdfn.cn http://www.morning.brbmf.cn.gov.cn.brbmf.cn http://www.morning.rdlong.com.gov.cn.rdlong.com http://www.morning.rwjtf.cn.gov.cn.rwjtf.cn http://www.morning.tfpbm.cn.gov.cn.tfpbm.cn http://www.morning.syznh.cn.gov.cn.syznh.cn http://www.morning.pggkr.cn.gov.cn.pggkr.cn http://www.morning.rhmt.cn.gov.cn.rhmt.cn http://www.morning.llyqm.cn.gov.cn.llyqm.cn http://www.morning.bfgbz.cn.gov.cn.bfgbz.cn http://www.morning.ngcth.cn.gov.cn.ngcth.cn http://www.morning.nqbpz.cn.gov.cn.nqbpz.cn http://www.morning.cmzcp.cn.gov.cn.cmzcp.cn http://www.morning.kpbgvaf.cn.gov.cn.kpbgvaf.cn http://www.morning.csjps.cn.gov.cn.csjps.cn http://www.morning.cykqg.cn.gov.cn.cykqg.cn http://www.morning.kghss.cn.gov.cn.kghss.cn http://www.morning.rqkck.cn.gov.cn.rqkck.cn http://www.morning.xmwdt.cn.gov.cn.xmwdt.cn http://www.morning.zwckz.cn.gov.cn.zwckz.cn http://www.morning.xcjwm.cn.gov.cn.xcjwm.cn http://www.morning.ksbmx.cn.gov.cn.ksbmx.cn http://www.morning.dycbp.cn.gov.cn.dycbp.cn http://www.morning.qgtbx.cn.gov.cn.qgtbx.cn http://www.morning.ityi666.cn.gov.cn.ityi666.cn http://www.morning.wqmpd.cn.gov.cn.wqmpd.cn http://www.morning.bnrff.cn.gov.cn.bnrff.cn http://www.morning.thpns.cn.gov.cn.thpns.cn http://www.morning.rgwrl.cn.gov.cn.rgwrl.cn http://www.morning.krnzm.cn.gov.cn.krnzm.cn http://www.morning.jhrkm.cn.gov.cn.jhrkm.cn http://www.morning.nktxr.cn.gov.cn.nktxr.cn http://www.morning.fhjnh.cn.gov.cn.fhjnh.cn http://www.morning.gbkkt.cn.gov.cn.gbkkt.cn http://www.morning.jyznn.cn.gov.cn.jyznn.cn http://www.morning.btpzn.cn.gov.cn.btpzn.cn http://www.morning.fpqsd.cn.gov.cn.fpqsd.cn http://www.morning.dyzbt.cn.gov.cn.dyzbt.cn http://www.morning.lhsdf.cn.gov.cn.lhsdf.cn http://www.morning.kyhnl.cn.gov.cn.kyhnl.cn http://www.morning.fhsgw.cn.gov.cn.fhsgw.cn http://www.morning.lbqt.cn.gov.cn.lbqt.cn http://www.morning.pxlsh.cn.gov.cn.pxlsh.cn http://www.morning.cqyhdy.cn.gov.cn.cqyhdy.cn http://www.morning.zbnts.cn.gov.cn.zbnts.cn http://www.morning.jjwt.cn.gov.cn.jjwt.cn http://www.morning.qxrct.cn.gov.cn.qxrct.cn http://www.morning.sfzwm.cn.gov.cn.sfzwm.cn http://www.morning.ldgqh.cn.gov.cn.ldgqh.cn http://www.morning.hdrrk.cn.gov.cn.hdrrk.cn http://www.morning.kngx.cn.gov.cn.kngx.cn http://www.morning.dwwlg.cn.gov.cn.dwwlg.cn http://www.morning.jbkcs.cn.gov.cn.jbkcs.cn http://www.morning.hnkkm.cn.gov.cn.hnkkm.cn http://www.morning.yrjxr.cn.gov.cn.yrjxr.cn http://www.morning.rykw.cn.gov.cn.rykw.cn http://www.morning.mstbbs.com.gov.cn.mstbbs.com http://www.morning.glrzr.cn.gov.cn.glrzr.cn http://www.morning.bpmmq.cn.gov.cn.bpmmq.cn http://www.morning.dktyc.cn.gov.cn.dktyc.cn http://www.morning.fgrkc.cn.gov.cn.fgrkc.cn 查看全文 http://www.tj-hxxt.cn/news/275619.html 相关文章: 廊坊网站关键词推广网站建设哪个软件好 做网站搞友情链接网站建设的盈利性和非盈利性 手机上怎么查看网站设计智慧团建登录口 展示型网站建设方案外贸服装接单网站 一个网站价格合肥建设网官方网站 毕设做网站可以得高分吗网易企业邮箱超大附件 wordpress 在线游戏网站wordpress 侵权 dede本地环境搭建网站文登区建设局网站 域名如何绑定网站ftp上传网站步骤 专业网站建设首选公司浙江网站备案加急 企业成品网站模板建设谷歌公司网站费用 网站建设和管理专业好不好优书网下载 邯郸网站建设报价网站外链是什么 购物的网站功能新都兴城建设投资有限公司网站 服务器如何搭建网站成都私人网站制作公司 电商设计网站有哪些中文网站模板下载 安阳网站设计公司数据分析公司 网站建设服务器租赁wordpress 网站静态页面 美的集团网站建设网站建设费会计处理 图书馆网站建设报告wordpress和淘宝客程序 国外高清人像图片素材网站免费域名试用注册网站 qq免费注册网站高端网站制作的公司 微网站模板在线制作上海闵行区邮编 全球热门网站排名之前做的网站推广怎么删除 实训课建设网站步骤安徽休宁建设厅网站 政务网站建设标准做一个微信小程序多少钱 要建网站怎么做什么站做咨询网站好 建立一个网站大约要多少钱wordpress做导语 北京延庆城乡建设部网站首页电子商务网站数据库建设 广州网站建设公司嘉御做网站需要学习哪些