WPF笔记--XAML

XAML的全程是Extensible Application Markup Language,即可扩展应用程序标记语言。
XAML的一个巨大优点是:它帮助开发团队真正实现了UI与逻辑的剥离。XAML是一种单纯的声明型语言。
UI是使用XAML画出来,而功能逻辑可以用C#/VB.NET/C++.NET等托管语言来实现。
 2 从零起步认识XAML

2.2 剖析最简单的XAML代码

(1) xmlns后面可以跟一个可选的映射前缀,之间用冒号分隔。如果没有写可选映射前缀,那就意味着所有来自于这个名称空间的标签都不用加前缀,这个没有映射前缀的名称空间成为”默认名称空间“——默认名称空间只能有一个,而且应该选择其中元素被最频繁使用的名称空间来充当默认名称空间。

  1. <Window x:Class="FirstWpfApplication.MainWindow123"  
  2.         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
  3.         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
  4.         Title="Anders" Height="173" Width="296">  
(2) 我们设计界面一般使用Blend,当我们用blend打开工程文件后发现命名空间会有些变化,同时引用别的类库的方法的时候会自动引用出命名空间,例如我最近在将WINFORM项目转为WPF的过程中有部分没有重构完成的控件还是使用老的winform控件,这个时候我们只需要引用winform命名控件即可,同时在界面控件的前面加上前缀即可。
  1. <Window x:Class="FirstWpfApplication.MainWindow123"  
  2.         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
  3.         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4.        xmlns:winf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"    
  5.     xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration" 
  6.     xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7.     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  8.         Title="Anders" Height="173" Width="296">  

xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

映射 XAML 兼容命名空间 http://schemas.openxmlformats.org/markup-compatibility/2006 时,建议使用 mc XML 命名空间前缀作为前缀约定。


(3) 打开App.xaml这个文件,你能发现这样一个Attribute——StartupUri=“Window1.xaml”,它是在告诉编译器把由Window1.xaml解析后生成的窗体作为程序启动时的主窗体。
  1. <Application x:Class="FirstWpfApplication.App"  
  2.              xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
  3.              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
  4.              StartupUri="Window1.xaml">  
  5. </Application>  
x:Class这个Attribute的作用是当XAML解析器将包含它的标签解析成C#类后,这个类的类名是什么。  

 <Window x:Class="FirstWpfApplication.MainWindow123" 


Windows1类的声明时使用了partial关键字,正是由于这种partial机制,我们可以把类的逻辑代码留在.cs文件里,用C#语言来实现,而把那些与声明及布局UI元素相关的代码分离出去,实现UI与逻辑分离。



内容在转载基础上稍加补充和修改。


 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值